Commit graph

689 commits

Author SHA1 Message Date
Alexandre Oliva
a1cc9221e2 * config/tc-sh.h [OBJ_ELF] (TC_FIX_ADJUSTABLE): Define.
* config/tc-sh.c (md_apply_fix): Map 32-bit relocations that
become PC-relative to BFD_RELOC_32_PCREL.  Reject 16- or 8-bit
similar relocs.
(sh_obj_adjustable): Return 1 for PC-relative offsets used in
branches.


* config/tc-sh.h (DIFF_EXPR_OK, GLOBAL_OFFSET_TABLE_NAME,
TC_RELOC_GLOBAL_OFFSET_TABLE, TC_RELOC_RTSYM_LOC_FIXUP): Define.
* config/tc-sh.c (sh_elf_cons, sh_elf_suffix): New functions.
[OBJ_ELF] (md_pseudo_table) <long, int, word, short>: Use them.
(GOT_symbol): New variable.
(md_undefined_symbol): Set it.
2000-09-02 02:36:27 +00:00
Richard Henderson
44576e1fc1 * config/tc-ia64.c (match): Don't inline.
(extra_goodness): New.
        (md_begin): Prefer nop.f and nop.b for best_template.
2000-09-02 01:02:41 +00:00
Kazu Hirata
76b0a8c0ed 2000-08-31 Kazu Hirata <kazu@hxi.com>
* as.c: Fix formatting.
	* cond.c: Likewise.
2000-08-31 23:17:47 +00:00
Kazu Hirata
29f8404ce7 2000-08-31 Kazu Hirata <kazu@hxi.com>
* frags.c: Fix formatting.
	* macro.c: Likewise.
2000-08-31 18:36:18 +00:00
Eric Christopher
b4c1ea07cd 2000-08-31 Eric Christopher <echristo@cygnus.com>
* config/tc-mn10300.c:  Cleanup and fix warnings.
	(md_pseudo_table): Add initializers.
	(md_show_usage): Cleanup.
	(md_parse_option): Fix warnings.
	(md_undefined_symbol): Fix warnings.
	(md_conver_frag): Fix warnings.
	(tc_gen_reloc): Fix warnings.
	(md_apply_fix3): Fix warnings.
	(check_operand): Fix warnings.
2000-08-31 18:30:51 +00:00
Alexandre Oliva
ac48eca1ad * acinclude.m4: Include libtool and gettext macros from the
top level.
* aclocal.m4, configure: Rebuilt.
2000-08-31 09:46:11 +00:00
Geoffrey Keating
e0c2164971 In src/gas/ChangeLog:
2000-08-30  Mark Hatle  <mhatle@mvista.com>

	* config/tc-ppc.c (md_parse_option): Recognize -m405.

In src/opcodes/ChangeLog:
2000-08-30  Mark Hatle  <mhatle@mvista.com>

	* ppc-opc.c Add XTLB macro for a few PPC 4xx extended mnemonics.
	(powerpc_opcodes): Add table entries for PPC 405 instructions.
	Changed rfci, icbt, mfdcr, dccci, mtdcr, iccci from PPC to PPC403
	instructions.
	Added extended mnemonic mftbl as defined in the 405GP manual
	for all PPCs.
2000-08-31 06:48:49 +00:00
Kazu Hirata
cf39a089d6 2000-08-31 Kazu Hirata <kazu@hxi.com>
* listing.c: Fix formatting.
2000-08-31 06:11:03 +00:00
Kazu Hirata
3ee4defc44 2000-08-29 Kazu Hirata <kazu@hxi.com>
* app.c: Fix a comment typo.  Fix formatting.
2000-08-30 03:51:46 +00:00
Timothy Wall
9a8f29e36f Fix some ia64 gas failures. 2000-08-29 12:15:51 +00:00
Nick Clifton
1e8d20f4cc Correctly calculate the pc relative offset of the target destination for jmp
instructions.
2000-08-25 18:40:16 +00:00
Hans-Peter Nilsson
5bcac8a48e * NEWS: Mention support for CRIS. 2000-08-24 17:42:52 +00:00
Denis Chertykov
46547ecc23 * config/tc-avr.h (TC_IMPLICIT_LCOMM_ALIGNMENT): New macros.
Sets `.lcomm' alignment to zero.
2000-08-24 16:54:03 +00:00
Denis Chertykov
70a516efd4 * config/tc-avr.h (TC_IMPLICIT_LCOMM_ALIGNMENT): New macros.
Sets `.lcomm' alignment to zero.
2000-08-24 16:50:21 +00:00
Alexandre Oliva
4b853faa33 * config/tc-i386.h <OBJ_MAYBE_ELF, OBJ_MAYBE_COFF>
(TC_FIX_ADJUSTABLE): Define.
2000-08-23 21:12:48 +00:00
Jim Wilson
efcc591461 Fix unwind section bug found by linux kernel.
* config/tc-ia64.c (output_unw_records): Set U & E flags only if
	unwind.personality_routine is set.
2000-08-23 20:36:38 +00:00
Alexandre Oliva
aca719bf68 * write.c (TC_FIX_ADJUSTABLE): Remove the duplicate. 2000-08-23 18:20:44 +00:00
Alexandre Oliva
a3da4de1ac * config/tc-i386.h (TC_FIX_ADJUSTABLE): Do *NOT* define if target
environment is pe.
2000-08-23 11:19:20 +00:00
H.J. Lu
56385375da 2000-08-22 H.J. Lu <hjl@gnu.org>
* config.in (STRICTCOFF): New for strict COFF.

	* configure.in: Define STRICTCOFF for i386-*-msdosdjgpp*,
	i386-*-go32* and i386-go32-rtems*.
	* configure: Rebuilt.

	* config/obj-coff.c (obj_coff_endef): Follow the historical
	behavior if STRICTCOFF is not defined.

	* doc/internals.texi: Document STRICTCOFF.
2000-08-22 19:14:32 +00:00
H.J. Lu
5e0c222624 2000-08-21 H.J. Lu <hjl@gnu.org>
* gas/all/cofftag.d: Support the strict COFF.
2000-08-22 19:11:55 +00:00
Alexandre Oliva
8f36cd18af * write.c (TC_FIX_ADJUSTABLE): Define to 1, if not defined.
(fixup_segment) Use it instead of TC_DONT_FIX_NON_ADJUSTABLE.
* config/tc-i386.h (TC_DONT_FIX_NON_ADJUSTABLE): Remove.
<OBJ_ELF, OBJ_COFF, TE_PE> (TC_FIX_ADJUSTABLE): Define.
* config/tc-arm.h (TC_DONT_FIX_NON_ADJUSTABLE): Remove.
<OBJ_ELF> (TC_FIX_ADJUSTABLE): Define.
* config/tc-i960.h, config/tc-m68k.h, config/tc-v850.h:
Likewise.
2000-08-22 04:52:40 +00:00
Eric Christopher
58a77e418b 2000-08-22 Eric Christopher <echristo@cygnus.com>
* config/tc-mn10300.c: (md_apply_fix): New function.
	(mn10300_force_relocation): New function.
	(mn10300_fix_adjustable): New function.

	* config/tc-mn10300.h: (TC_FORCE_RELOCATION): Define.
	(TC_HANDLES_FX_DONE): Define.
	(obj_fix_adjustable): Define.
	(MD_APPLY_FIX3): Define.
	(TC_LINKRELAX_FIXUP): Define.

	* write.c: (TC_LINKRELAX_FIXUP):  Define if not
	previously defined.
	(fixup_segment): Use TC_LINKRELAX_FIXUP.

	* doc/internals.texi: Document TC_LINKRELAX_FIXUP.
2000-08-22 01:20:41 +00:00
Jason Eckhardt
ded0649cd5 2000-08-21 Jason Eckhardt <jle@cygnus.com>
bfd:
	* elf32-i860.c (elf32_i860_relocate_pc16): Just write the immediate
	field with the newly relocated value instead of adding it to the
	existing immediate field.
	(elf32_i860_relocate_splitn): Likewise.
	(elf32_i860_relocate_highadj): Likewise.

gas:
	* config/tc-i860.c (md_apply_fix3): Do not insert the immediate
	if the fixup resulted in a relocation.
2000-08-21 23:26:19 +00:00
Nick Clifton
66102fe268 Replace as_tsktsk with as_warn.
Make reference to first element of shift_names explicit.
2000-08-18 19:27:30 +00:00
Alexandre Oliva
021986386e * write.c (fixup_segment) [TC_DONT_FIX_NON_ADJUSTABLE]: Use
obj_fix_adjustable() and tc_fix_adjustable() to tell whether to
add a symbol's address.  Removed all target-specific #ifdefs that
used to accomplished the same.
* config/tc-v850.h (TC_DONT_FIX_NON_ADJUSTABLE): Define.
* config/tc-m68k.h (TC_DONT_FIX_NON_ADJUSTABLE): Define.
* config/tc-arm.h (TC_DONT_FIX_NON_ADJUSTABLE): Define.
* config/tc-i960.h (TC_DONT_FIX_NON_ADJUSTABLE): Define.
* config/tc-i386.h (TC_DONT_FIX_NON_ADJUSTABLE): Define.
2000-08-18 18:45:05 +00:00
Kazu Hirata
353e2c6994 2000-08-17 Kazu Hirata <kazu@hxi.com>
* dwarf2dbg.c: Fix formatting.
2000-08-18 01:42:14 +00:00
Nick Clifton
004af544ae Minor formatting changes 2000-08-17 23:57:52 +00:00
Nick Clifton
4fb7971f4b Allow illegal shifts by zero to be recorded as logical shift lefts by zero. 2000-08-17 23:46:43 +00:00
Jim Wilson
50b81f1903 Fix 3 DV bugs, and a few minor cleanups.
gas/
	* config/tc-ia64.c (specify_resource, case IA64_RS_GR): Handle
	postincrement modified registers.  Handle IA64_OPND_R3_2 addl
	source registers.
	(note_register_values): Handle IA64_OPND_R3_2 operands.
gas/testsuite/
	* gas/ia64/dv-raw-err.s: Add new tests for addl and postinc.
	* gas/ia64/dv-raw-err.l: Likewise.
	* gas/ia64/dv-waw-err.l: Update sed pattern.
	* gas/ia64/opc-f.pl: Delete fpsub, and fpadd comment.
	* gas/ia64/opc-f.s, gas/ia64/opc-f.d: Regenerate.
include/opcode/
	* ia64.h (IA64_OPCODE_POSTINC): New.
opcodes/
	* ia64-ic.tbl (pr-readers-nobr-nomovpr): Add addl, adds.  Delete
	break, mov-immediate, nop.
	* ia64-opc-f.c: Delete fpsub instructions.
	* ia64-opc-m.c: Add POSTINC to all instructions with postincrement
	address operand.  Rewrite using macros to avoid long lines.
	* ia64-opc.h (POSTINC): Define.
	* ia64-asmtab.c: Regenerate.
2000-08-16 23:20:15 +00:00
Jason Eckhardt
f869cfc65e 2000-08-16 Jason Eckhardt <jle@cygnus.com>
* config/tc-i860.c (md_operand): Silly typo fixed.
2000-08-16 21:34:45 +00:00
Nick Clifton
8cb8bcbabb Tidy up decoding of shift based addressing modes.
Add extra tests for these addressing modes
2000-08-16 19:02:00 +00:00
Jakub Jelinek
c2158c2433 * config/tc-sparc.c: Kill all warnings.
(md_parse_option): Set -32/-64 for -xarch=, allow all -A archs
	in -xarch= as well.
	(md_show_usage): Update usage text.
2000-08-16 17:52:37 +00:00
Nick Clifton
70485b5c18 Warn abouyt "bx pc" not being very useful. 2000-08-16 17:48:50 +00:00
Jeff Law
0d10e18267 * config/tc-sh.h (DWARF2_LINE_MIN_INSN_LENGTH): Defined.
* config/tc-sh.c (md_assemble): Changed so debug_type
	test performed for ppi_assemble
	* config/tc-sh.c: Included dwarf2dbg.h.
	(debug_line): Defined.
	(md_assemble): Generates dwarf2 line info.
	(sh_finalize): New function.  Finalize dwarf2 info.
	(assemble_ppi): Returns size of code generated.
	(build_Mytes): Returns size of code generated.
	(md_pseudo_table): Added "file" and "loc" psuedo ops.
	* config/tc-sh.h (md_end): Defined.
	(sh_finalize): Declared.
2000-08-15 20:47:19 +00:00
Alexandre Oliva
1db77c8ec9 * config/tc-sh.c (md_apply_fix) [BFD_RELOC_32, BFD_RELOC_16]: Use
md_number_to_chars.
2000-08-15 16:04:37 +00:00
Nick Clifton
046b3b54ee Allow "bx pc" in ARM mode. 2000-08-14 21:20:03 +00:00
Diego Novillo
fa2255cb6b * tc-i386.c (md_assemble): Skip suffix check if the opcode modifier
has the IgnoreSize bit set.
2000-08-14 21:12:47 +00:00
Jim Wilson
c43c2cc5fa Add support for IA-64 specific elf header flags.
bfd/
2000-08-14  Jim Wilson  <wilson@cygnus.com>
	* elf64-ia64.c (elf64_ia64_merge_private_bfd_data): Handle
	EF_IA_64_REDUCEDFP, EF_IA_64_CONS_GP, and EF_IA_64_NOFUNCDESC_CONS_GP.
	(elf64_ia64_print_private_bfd_data): Likewise.  Also handle
	EF_IA_64_ABSOLUTE.
gas/
2000-08-14  Jim Wilson  <wilson@cygnus.com>
	* config/tc-ia64.c (md_longopts): Add -mconstant-gp and -mauto-pic.
	(md_parse_option):  Add OPTION_MCONSTANT_GP and OPTION_MAUTO_PIC.
	(md_begin): Change assignment to md.flag to OR in the new bit.
include/elf/
2000-08-14  Jim Wilson  <wilson@cygnus.com>
	* elf/ia64.h (EF_IA_64_REDUCEDFP, EF_IA_64_CONS_GP,
	EF_IA_64_NOFUNCDESC_CONS_GP, EF_IA_64_ABSOLUTE): Define.
2000-08-14 20:13:39 +00:00
Nick Clifton
d1d8ba2284 Set the debug flag for storage types C_ARG, C_REGPARM, C_FIELD, C_MOS, C_MOE,
C_MOU, and C_EOS.
2000-08-14 19:41:40 +00:00
Jason Eckhardt
22b36938e7 2000-08-14 Jason Eckhardt <jle@cygnus.com>
* NEWS: Mention i860 support.
2000-08-14 18:50:13 +00:00
Jeff Law
c0bd0db285 * config/tc-mn10300.h (DWARF2_LINE_MIN_INSN_LENGTH): Define. 2000-08-14 17:49:55 +00:00
Andreas Schwab
0ac658b8b7 * doc/c-arm.texi (ARM Directives): Fix warnings from makeinfo. 2000-08-14 09:02:45 +00:00
Jason Eckhardt
9fc2dda293 2000-08-11 Andreas Schwab <schwab@suse.de>
* doc/c-i860.texi (Opcodes for i860): Remove braces from @item
        argument.
2000-08-12 16:05:46 +00:00
Kazu Hirata
351aa9f657 2000-08-11 Kazu Hirata <kazu@hxi.com>
* config/obj-bout.c: Fix formatting.
2000-08-11 18:28:04 +00:00
Kazu Hirata
bc4466dcf1 2000-08-11 Kazu Hirata <kazu@hxi.com>
* expr.c: Fix formatting.
2000-08-11 17:50:25 +00:00
Jason Eckhardt
a9c9941975 2000-08-10 Jason Eckhardt <jle@cygnus.com>
* doc/c-i860.texi: Flesh out the i860 section more.
2000-08-10 23:23:23 +00:00
Kazu Hirata
929b12bc4e 2000-08-10 Kazu Hirata <kazu@hxi.com>
* expr.c: Fix formatting.
2000-08-10 23:13:37 +00:00
Kazu Hirata
7c743825ea 2000-08-10 Kazu Hirata <kazu@hxi.com>
* symbols.c: Fix formatting.
2000-08-10 19:00:08 +00:00
Alan Modra
fc997f4bda Use elf on Unixware 7. 2000-08-09 14:40:53 +00:00
Jason Eckhardt
305d537e30 gas:
2000-08-08  Jason Eckhardt  <jle@cygnus.com>

	* config/tc-i860.h: Rework completely for BFD_ASSEMBLER.
	(i860_fix_info): New enum.
	(MD_APPLY_FIX3): Define.
	(WORKING_DOT_WORD): Define.
	(TC_HANDLES_FX_DONE): Define.
	(DIFF_EXPR_OK): Define.
	(LISTING_HEADER): Define.
	(TARGET_FORMAT): Select target format based on endian flag.
	(TARGET_BYTES_BIG_ENDIAN): Default to little endian.
	(target_big_endian): Add external declaration.

	* config/tc-i860.c: All existing code reworked completely. Other
	new code shown below.
	(SYNTAX_SVR4): Define.
	(target_warn_expand): New variable.
	(md_shortopts): Declare and define (-Qy, -Qn, and -V options).
	(md_longopts): Declare and define with new options (-EL, -EB,
	and -mwarn-expand).
	(md_show_usage): New function.
	(md_operand): New function.
	(obtain_reloc_for_imm16): New function.
	(md_apply_fix3): New function.
	(tc_gen_reloc): New function.

include:
2000-08-08  Jason Eckhardt  <jle@cygnus.com>

	* opcode/i860.h: Small formatting adjustments.

opcode:
2000-08-08  Jason Eckhardt  <jle@cygnus.com>

	* i860-dis.c (print_br_address): Change third argument from int
	to long.

bfd:
2000-08-08  Jason Eckhardt  <jle@cygnus.com>
	* elf32-i860.c (elf32_i860_howto_table): Updated some fields.
2000-08-09 03:33:42 +00:00