Ian Lance Taylor
9b2ac02954
* config/tc-mips.c (append_insn): Make sure there is enough room
...
in a frag after a mips16 instruction to switch it with a jump
instruction.
1996-12-10 21:18:38 +00:00
Jeff Law
42aa243574
* config/tc-mn10200.c (md_assemble): Opcode 0x0 is valid!
...
* config/tc-mn10300.c (md_assemble): Likewise.
Found by mn10200 gas testsuite.
1996-12-10 19:33:48 +00:00
Ian Lance Taylor
41a0ed225b
* config/tc-mips.c (mips16_extended_frag): Give an error for an
...
attempt to use a non absolute symbol in an extending frag.
1996-12-10 16:38:22 +00:00
Ian Lance Taylor
a7dd20e839
* app.c (do_scrub_chars): At the end of a C comment, pass space to
...
UNGET rather than PUT. Set old_state before setting state to -2.
PR 11229.
1996-12-10 03:47:41 +00:00
Jeff Law
dc1f8a2115
* config/tc-mn10200.c: Flesh out assembler support for MN10200.
...
* config/tc-mn10200.h: Likewise.
Actually assembles some mn10200 stuff (everything but mov* instructions!)
1996-12-09 23:53:37 +00:00
Ian Lance Taylor
559c664adb
* config/tc-mips.c (mips16_extended_frag): Avoid an infinite loop
...
when extending because the value is exactly maxtiny + 1.
1996-12-09 23:34:20 +00:00
Ian Lance Taylor
8728fa9263
* config/tc-mips.c (RELAX_MIPS16_ENCODE): Add small and ext
...
arguments, and store them. Adjust other RELAX_MIPS16 macros.
(RELAX_MIPS16_USER_SMALL): Define.
(RELAX_MIPS16_USER_EXT): Define.
(mips16_small, mips16_ext): New static variables.
(append_insn): Pass mips16_small and mips16_ext to
RELAX_MIPS16_ENCODE.
(mips16_ip): Set mips16_small and mips16_ext.
(mips16_immed): Don't check mips16_autoextend.
(mips16_extended_frag): Check USER_SMALL and USER_EXT.
1996-12-09 23:26:15 +00:00
Ian Lance Taylor
102633cecf
* write.c (write_relocs): Print an error for an out of range
...
fixup, rather than calling abort.
* as.c (main): Unlink the output file if there are errors while
generating the fixups.
1996-12-09 22:11:24 +00:00
Ian Lance Taylor
f74ba7a3d9
* config/tc-mips.c (mips16_extended_frag): Don't call
...
S_GET_VALUE.
(md_convert_frag): Call resolve_symbol_value before calling
S_GET_VALUE, and don't add in the frag address.
1996-12-07 00:32:05 +00:00
Ian Lance Taylor
15e69f9816
* config/tc-mips.c (mips16_immed): Add file and line parameters,
...
and use them when reporting errors. Change all callers.
1996-12-06 23:51:01 +00:00
Jeff Law
ca82e4ebdb
* config/tc-mn10300.c: Fix various gcc -Wall warnings.
...
Remove '$' prefixing for registers.
1996-12-06 22:44:30 +00:00
Martin Hunt
f787a8d9b8
Fri Dec 6 00:55:48 1996 Martin <hunt@cygnus.com>
...
* config/tc-d10v.c (md_assemble): Check to see if prev_seg
is initialized before using it.
(d10v_cleanup): No longer uses its argument, so make it void.
* config/tc-d10v.h (d10v_cleanup): Change prototype.
1996-12-06 09:13:25 +00:00
Michael Meissner
6cc03ed378
Fix recent breakage
1996-12-06 04:46:19 +00:00
Ian Lance Taylor
00a69b895a
* write.c (fixup_segment): Don't discard the symbol for a PC
...
relative fixup to an absolute symbol.
PR 11204.
1996-12-05 16:06:14 +00:00
Martin Hunt
996bee906f
Wed Dec 4 15:42:41 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
...
* config/tc-d10v.c (md_assemble, d10v_cleanup): Fix bug
with multiple sections.
1996-12-04 23:47:16 +00:00
Ian Lance Taylor
943321c07d
* config/tc-mips.c (md_longopts): Rename mips-16 to mips16, and
...
no-mips-16 to no-mips16.
(s_mipsset): Accept .set mips16 and .set nomips16.
1996-12-04 18:01:48 +00:00
Michael Meissner
8b1e9f129b
Allow foo@suffix+constant relocations
1996-12-04 15:42:14 +00:00
Michael Meissner
b61802e7cb
Add -m{,no-}solaris support to enable/disable solaris comments & setting ppc flags
1996-12-04 04:26:04 +00:00
Jeff Law
a9f2e3e24f
* config/tc-mn10300.c (tc_gen_reloc): Get the addend from
...
fx_offset, not fx_addnumber.
Along with some simulator, compiler, bfd changes this fixes 90 or so
c-torture execution failures.
1996-12-02 07:41:52 +00:00
Jeff Law
5840a0e553
* config/tc-mn10300.h (tc_fix_adjustable): Don't do any
...
reloc adjustments.
reloc adjusting is of minimal value, and quite problematical for
machines which do linker relaxing...
1996-12-02 04:50:26 +00:00
Ian Lance Taylor
b608274a89
Sat Nov 30 17:34:48 1996 Eliot Dresselhaus <eliot@wally.edc.com>
...
* config/tc-i386.c: Correct misspelling: balenced to balanced.
1996-11-30 22:35:57 +00:00
Ian Lance Taylor
caeea0b47b
* config/tc-mips.c (md_section_align): Check for an alignment of
...
4, not an alignment of 16. Corrects August 7 patch.
1996-11-27 18:32:52 +00:00
Ian Lance Taylor
775c64a97f
* configure, conf.in: Rebuild with autoconf 2.12.
1996-11-26 22:08:11 +00:00
Ian Lance Taylor
c830c9ead7
* config/tc-ppc.c (ppc_elf_lcomm): Don't give an error if no
...
alignment is specified.
PR 11164.
1996-11-26 20:42:34 +00:00
Ian Lance Taylor
cc5703cd74
Add support for mips16 (16 bit MIPS implementation):
...
* config/tc-mips.c: Extensive additions for mips16 support, not
listed here.
(RELAX_OLD, RELAX_NEW): Use only 7 bits each.
(insn_uses_reg): Change last parameter to an enum.
* config/tc-mips.h (LOCAL_LABELS_DOLLAR): Define as 0.
(md_relax_frag): Define as mips_relax_frag.
(mips_relax_frag): Declare.
(struct mips_cl_insn): Add use_extend and extend fields.
(tc_fix_adjustable): Define.
* config/obj-elf.h (S_GET_OTHER): Define.
(S_SET_OTHER): Define.
1996-11-26 16:44:22 +00:00
J.T. Conklin
3ab410cd65
* config/tc-m68k.c (m68k_ip): Implement cases for new <, >, m, n,
...
o and p operand specifiers.
1996-11-26 02:07:49 +00:00
David Edelsohn
a0a2af4f95
* write.c: Delete "ifndef md_relax_frag" around is_dnrange.
...
(relax_segment, case rs_org): Move code inside braces. Move locals
target,after inside too.
(relax_segment, case rs_machine_dependent): Guts moved to ...
(relax_frag): New function.
Call md_prepare_relax_scan if defined.
* config/tc-m68k.h (md_prepare_relax_scan): Renamed from
M68K_AIM_KLUDGE.
1996-11-25 21:25:54 +00:00
Jeff Law
f98905f13d
* config/tc-mn10300.c (address_registers): Use '%' prefix for regs.
...
(data_registers, other_registers, md_assemble): Likewise.
1996-11-25 18:24:14 +00:00
Jeff Law
0671e7f6c6
* config/tc-mn10300.c (md_assemble): Correctly determine the
...
correct location and type for each relocation.
(md_pcrel_from): Simplify.
Last week's reloc work.
1996-11-25 15:54:43 +00:00
Ian Lance Taylor
5895d3f225
* config/tc-sh.c (md_convert_frag): Improve warning when branch is
...
converted into branch around branch.
PR 11103.
1996-11-22 20:48:05 +00:00
Jeff Law
d9a9c18fad
* config/tc-mn10300.h (DIFF_EXPR_OK): Don't define this.
...
(tc_fix_adjustable): Don't adjust relocs against weak symbols or
pc-relative relocs.
* config/tc-mn10300.c (md_begin): Set linkrelax.
(md_assemble): Create fixups as needed.
(md_apply_fix3): Gut. It shouldn't ever get called anymore.
First stab at fixups/relocs.
1996-11-21 18:58:26 +00:00
Michael Meissner
5e9b714f18
Do not convert short branch followed by short instruction into a parallel op if -O
1996-11-19 22:52:04 +00:00
Jeff Law
7f02192d13
* config/tc-mn10300.c (md_assemble): Handle MN10300_OPERAND_REG_LIST.
...
So GCC can use movm in prologue/epilogues.
1996-11-19 20:35:19 +00:00
Jeff Law
43d695a1e9
* config/tc-mn10300.c (mn10300_insert_operand): Provide prototype
...
via PARAMS.
(check_operand): Likewise.
1996-11-18 23:05:06 +00:00
Michael Meissner
ec5e212be2
Check validity of user parallel operations
1996-11-18 20:31:30 +00:00
Michael Meissner
228835a9b6
Branch and link instructions modify r13
1996-11-18 20:24:47 +00:00
Martin Hunt
edb89bfc5b
Thu Nov 14 11:17:49 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
...
* config/tc-d10v.c (write_2_short): Fix bug that wouldn't
allow a branch and link in parallel with an exe instruction.
1996-11-14 19:20:02 +00:00
Jeff Law
efba8af01d
* config/tc-mn10300.c (mn10300_insert_operand): MN10300_OPERAND_SPLIT
...
operands are assumed to be 32bits. Use "bits" field to hold the
number of bits in the main instruction word for MN10300_OPERAND_SPLIT.
(mn10300_check_operand): MN10300_OPERAND_SPLIT operands are assumed
to be 32bits.
1996-11-06 22:04:42 +00:00
Jeff Law
bdd91d4f41
* config/tc-mn10300.c (mn10300_insert_operand): Shift low part
...
of a MN10300_OPERAND_SPLIT operand by operand->shift.
For bset, bclr & btst.
1996-11-06 21:20:56 +00:00
Jeff Law
cdde2f5cee
* config/tc-mn10300.c (mn10300_insert_operand): Handle
...
MN10300_OPERAND_SPLIT.
For handling of 32bit operands.
1996-11-06 20:48:36 +00:00
Jeff Law
bfe5059c70
* config/tc-mn10300.c (md_assemble): Insert operands into
...
the extension part of the instruction if necessary.
(mn10300_insert_operand): Accept pointer to extension word
argument. Make insn a pointer argument too. Return type
is now void. All callers changed.
So we can correct insert operands into any instruction except those
which have 32bit operands.
1996-11-05 20:32:07 +00:00
Jeff Law
68328dc6bd
* config/tc-mn10300.c (mn10300_insert_operand): Handle
...
repeated register operands.
For mov imm8,dn
mov imm8,an
cmp imm8,dn
cmp imm8,an
The register appears twice in the bit pattern... Egad.
1996-11-04 19:54:50 +00:00
Ian Lance Taylor
9a5acea834
* doc/as.texinfo: Added section on reporting bugs.
1996-11-01 19:37:24 +00:00
Ian Lance Taylor
eb1b89196c
add missing d10v sanitization
1996-11-01 19:05:55 +00:00
Ian Lance Taylor
9af4021772
* config/tc-alpha.c: Change uses of void * to PTR. Change the
...
alpha_macro emit field to expect a const argument, and change the
arg field to be const. Fix some spacing to follow the GNU
standard.
Fri Nov 1 10:32:03 1996 Richard Henderson <rth@tamu.edu>
* config/tc-alpha.c (md_parse_option): Add knowledge of 21164pc
(pca56) and 21264 (ev6) cpus.
(md_apply_fix): Private relocation types are now negative.
(alpha_force_relocation): Likewise.
(tc_gen_reloc): Likewise.
(emit_insn): Likewise.
(emit_ldXu): Do the right thing when the hardware can do byte insns.
(emit_stX): Likewise.
(emit_sextX): Likewise.
1996-11-01 18:44:14 +00:00
Ian Lance Taylor
527dc0c9ed
* symbols.c (resolve_symbol_value): Improve the error message if
...
an undefined symbol is used in an expression.
1996-11-01 00:35:00 +00:00
Ian Lance Taylor
fe7e5bdf73
* doc/internals.texi: Rewrite, and add a lot of documentation.
...
* doc/Makefile.in (internals.info): New target.
1996-10-31 04:16:52 +00:00
Jeff Law
193e41979c
* config/tc-v850.h (tc_fix_adjustable): Don't adjust relocs
...
against weak symbols.
Fixing RW failures.
1996-10-30 21:58:38 +00:00
Jeff Law
baf385b5fc
* config/tc-v850.c (md_assemble): Don't lose for relaxable
...
addresses like .+6.
Fixing more problems with new relaxing code.
1996-10-29 21:16:17 +00:00
Jeff Law
2385d90a81
* config/tc-v850.c (md_convert_frag): Make sure we insert the
...
fixup at the right address within the frag.
1996-10-29 20:07:13 +00:00