576 Commits

Author SHA1 Message Date
Jan Hubicka
23df107806 * elf64-x86-64.c (x86_64_elf_howto): Fix name of R_X86_64_GOTPCREL.
* tc-i386.c (i386_displacement): Fix handling of
	BFD_RELOC_X86_64_GOTPCREL.
	(i386_validate_fix): Likewise.
2001-02-12 16:47:15 +00:00
Phil Blundell
b1e2e654ad 2001-02-12 Philip Blundell <pb@futuretv.com>
* config/tc-arm.c (do_ldst): Improve warnings for unpredictable
	ldrt/strt instructions.
2001-02-12 13:32:25 +00:00
Nick Clifton
708b82c780 fix formatting 2001-02-11 23:22:25 +00:00
Nick Clifton
9117d2197e Apply several patches from Maciej W. Rozycki 2001-02-11 23:11:41 +00:00
Chris Demetriou
0f074f60a4 2001-02-10 Chris Demetriou <cgd@broadcom.com>
* config/tc-mips.c (md_parse_option): Don't try to compile
        ELF-only option code if not ELF.
2001-02-10 21:41:12 +00:00
Richard Henderson
91a2ae2a30 * config/tc-ia64.h (md_elf_section_type): New macro.
(ELF_TC_SPECIAL_SECTIONS): Drop .IA_64.unwind and .IA_64.unwind_info
        (they're now handled via ia64_elf_section_type.

        * config/tc-ia64.c (unwind): New members saved_text_seg,
        saved_text_subseg, and force_unwind_entry.
        (optimize_unw_records): New function to optimize away unnecessary
        unwind directives.
        (ia64_elf_section_type): New function.
        (output_unw_records): Generate unwind info only if the size is
        non-zero or if it's forced for some other reason (e.g.,
        handlerdata or a personality routine).
        (generate_unwind_image): Don't switch back to previous
        section---stay inside the unwind info section instead so that
        handlerdata that may follow goes into the right place.
        (dot_handlerdata): Force generation of unwind entry and save the
        current active text segment before generating unwind image.
        (dot_unwentry): Force generation of unwind entry.
        (dot_personality): Ditto.
        (dot_endp): Generate unwind table entry only if there is
        some unwind info or the unwind entry was forced.

        * config/tc-ia64.c (make_unw_section_name): New macro to form
        unwind section name.
        (generate_unwind_image): Add "text_name" argument.  Use it to
        form unwind section name.
        (dot_handlerdata): Determine current segment (section) name and
        pass it to generate_unwind_image().
        (dot_endp): Determine current segment (section) name and use
        it to determine the appropriate unwind section name.
        (ia64_md_do_align): Add missing ATTRIBUTE_UNUSED declarations to
        n, fill, and max arguments.
2001-02-10 01:42:04 +00:00
Nick Clifton
a85d7ed0f0 Add s390 support 2001-02-10 00:58:38 +00:00
Alexandre Oliva
de68de201f * config/tc-sh.c (md_pseudo_table): Add uaquad. Use s_uacons for
2byte, 4byte and 8byte.
2001-02-09 18:21:42 +00:00
Alan Modra
8ea46bbdec (pa_build_unwind_subspace): Don't call
md_number_to_chars with size > sizeof (valueT).
2001-02-08 00:15:36 +00:00
H.J. Lu
a99746f4ee 2001-02-06 H.J. Lu <hjl@gnu.org>
* config/tc-ia64.h (TC_RELOC_RTSYM_LOC_FIXUP): Do fixup if
	there is no relocation.
2001-02-07 01:04:58 +00:00
H.J. Lu
85b40035dd 2001-02-06 H.J. Lu <hjl@gnu.org>
* config/tc-ia64.h (TC_RELOC_RTSYM_LOC_FIXUP): New. Defined.

	* config/tc-ia64.c (md_parse_option): Only accept the valid
	ia64 options on "-axxx".
2001-02-06 19:09:01 +00:00
Jim Wilson
3557da9209 Don't abort for invalid input, print an error message instead.
* config/tc-ia64.c (errata_nop_necessary_p): Return 0 instead of
	aborting for invalid operands.
2001-02-06 03:49:29 +00:00
Alan Modra
da6c73e080 Fix unwind info when cross-compiling from little-endian machines. 2001-02-06 02:52:09 +00:00
Stephane Carrez
986c6f4ba0 * config/tc-m68hc11.h (LISTING_HEADER): Use m68hc11_listing_header
function to select the header according to the cpu.
	(md_after_pass_hook, md_do_align): Remove.
	(md_cleanup, m68hc11_cleanup): Remove.
	(md_pcrel_from_section): Declare.
	* config/tc-m68hc11.c (build_dbranch_insn): Remove insn_size.
	(build_jump_insn, build_insn): Likewise.
	(m68hc11_listing_header): New function.
	(m68hc11_cleanup): Remove.
2001-02-04 13:58:30 +00:00
Stephane Carrez
dbb8ad4917 * tc-m68hc11.c (relaxable_symbol): Relax externally visible symbols
because there is no support for shared libraries and these symbols
	can't be overridden (unless they are weak).
2001-02-02 14:14:11 +00:00
Alan Modra
22862cde86 Fix a null-pointer dereference and some range checks. 2001-01-30 13:13:29 +00:00
Nick Clifton
8ec6253e76 Do not abort if tcbit is still set. Issue an error message instead.
Fix compile time warnings
2001-01-25 20:26:17 +00:00
Alan Modra
015c05c1d0 (m32r_handle_align): Declare type of fragp. 2001-01-23 13:31:10 +00:00
Kazu Hirata
664984174e 2001-01-22 Kazu Hirata <kazu@hxi.com>
* config/tc-alpha.c: Fix formatting.
2001-01-22 20:24:11 +00:00
Kazu Hirata
1aad8cf8bb 2001-01-19 Kazu Hirata <kazu@hxi.com>
* config/tc-alpha.c: Fix formatting.
2001-01-20 04:23:33 +00:00
Kazu Hirata
32ff5c2e6d 2001-01-18 Kazu Hirata <kazu@hxi.com>
* config/tc-alpha.c: Fix formatting.
2001-01-19 12:03:34 +00:00
Nick Clifton
cd17328aad Remove redundant bit from "fa" and "da" flags 2001-01-19 04:35:29 +00:00
Kazu Hirata
e5cb08ac57 2001-01-16 Kazu Hirata <kazu@hxi.com>
* config/tc-i386.c: Fix formatting.
2001-01-17 23:41:35 +00:00
Alan Modra
64afeba389 Support hand-crafted .PARISC.unwind entries 2001-01-16 13:52:16 +00:00
Alan Modra
1d3d5051d1 Build unwind info for more than just .text section. 2001-01-16 13:06:14 +00:00
Jim Wilson
b44b1b85f3 Fix assembler segfault on gcc/crtstuff.c file.
* config/tc-ia64.c (ia64_flush_insns): Handle unwind directives
	not immediately followed by an instruction.
2001-01-15 23:30:38 +00:00
Kazu Hirata
098f2ec3f5 2001-01-15 Kazu Hirata <kazu@hxi.com>
* config/tc-m68hc11.c: Fix formatting.
2001-01-15 23:09:52 +00:00
Alan Modra
fcfd491608 Missed this in last commit "Linux target variants for elfxx-hppa." 2001-01-15 02:36:21 +00:00
Kazu Hirata
19203624a6 2001-01-14 Kazu Hirata <kazu@hxi.com>
* config/tc-arc.c: Fix formatting.
2001-01-15 01:37:20 +00:00
Kazu Hirata
1e07b820d1 2001-01-14 Kazu Hirata <kazu@hxi.com>
* config/tc-arc.c: Fix formatting.
2001-01-14 20:36:41 +00:00
Kazu Hirata
bfb32b5207 2001-01-14 Kazu Hirata <kazu@hxi.com>
* config/tc-alpha.c: Fix formatting.
	* config/tc-arc.c: Likewise.
	* config/tc-arc.h: Likewise.
	* config/tc-d10v.c: Likewise.
	* config/tc-i370.c: Likewise.
	* config/tc-i386.c: Likewise.
	* config/tc-i960.c: Likewise.
	* config/tc-m68k.c: Likewise.
	* config/tc-ppc.c: Likewise.
	* config/tc-sparc.c: Likewise.
	* config/tc-tahoe.c: Likewise.
	* config/tc-vax.c: Likewise.
2001-01-14 18:54:06 +00:00
Alan Modra
c46b75158b Use SEGREL32 relocs for elf32-hppa unwind. 2001-01-14 07:03:49 +00:00
Alan Modra
1328dc9844 Adds assembly and dis-assembly support for the HPPA wide
mode, 16 bit forms of ldi, ldo, ldw and stw instructions.
2001-01-14 05:14:45 +00:00
Jan Hubicka
b9d79e0379 * tc-i386.h (TARGET_MACH): New macro.
(i386_mach): Declare.
	* tc-i386.c (i386_mach): New function.
2001-01-13 23:37:57 +00:00
Jan Hubicka
e2914f484e * i386.c (md_assemble): Check cpu_flags even for nullary instructions.
* i386.h (i386_optab): Fix pusha and ret templates.

	* i386-dis.c (dis386_att, disx86_64_att): Fix ret, lret and iret
	templates.
2001-01-13 09:05:55 +00:00
Alan Modra
6e0b89ee6c Cure recent x86 warts. 2001-01-12 03:34:49 +00:00
Nick Clifton
0d2bcfafbf Updated ARC assembler from arccores.com 2001-01-11 21:20:20 +00:00
Stephane Carrez
8805103910 Fix gas 68HC12 indexed addressing code generation 2001-01-11 20:19:17 +00:00
Stephane Carrez
d8273f3bf3 Fix weak symbols for 68HC11 as 2001-01-11 19:42:47 +00:00
Andreas Jaeger
eea2ad4501 * config/tc-i386.h (TC_RELOC_GLOBAL_OFFSET_TABLE): Removed, it's
not used anywhere.
2001-01-11 11:38:24 +00:00
Nick Clifton
7a91e76ad1 Allow ADRL relocs to be adjusted in arm-coff 2001-01-11 01:40:18 +00:00
Andreas Jaeger
b77a7acd1b 2001-01-08 Bo Thorsen <bo@suse.de>
* config/tc-i386.c (i386_immediate, i386_displacement):
        GOTPCREL check fix.
2001-01-08 09:37:43 +00:00
Jan Hubicka
b96d3a207a * configure.in: Define DEFAULT_ARCH for i386.
* tc-i386.c (md_assemble): Return after the error message;
	move testing for 64bit operands to proper place.

	* i386.exp: Add tests for presence of 32bit versus 64bit output
	format; run both 64bit and 32bit tests when format is available;
	add x86_64 test.
	* x86_64.s: New file.
	* x86_64.d: New file.
2001-01-06 12:36:04 +00:00
Jan Hubicka
7bc70a8e57 * tc-i386.c (md_assemble): Handle third byte of the opcode as prefix.
* i386.h (i386_optab): Make [sml]fence template to use immext field.
2001-01-05 12:30:12 +00:00
Jan Hubicka
a167610dd0 * tc-i386.c (cpu_arch): Add Pentium4 and modify sledgehammer entry.
* NEWS: Add note about Pentium4 support.
2001-01-04 21:27:56 +00:00
Jan Hubicka
09f131f2b6 * tc-i387.c (pi, pte, pt): Update.
(type_names): Add new types.
2001-01-03 16:27:41 +00:00
Jan Hubicka
6f8c0c4ccc * tc-i386.h (CpuK6, CpuAthlon, CpuSledgehammer, CpuMMX, Cpu3dnow,
CpuUnknown): Renumber
	(CpuP4, CpuSSE2): New.
	(CpuUnknownFlags): Add CpuP4 and CpuSSE2

	* i386.h (i386_optab): Fix 64bit pushf template; Add instructions
	introduced by Pentium4
2001-01-03 15:36:26 +00:00
Phil Blundell
b96ed59a57 2001-01-03 Philip Blundell <pb@futuretv.com>
* config/tc-alpha.c (alpha_force_relocation): Handle vtable
	relocs.
	(alpha_fix_adjustable): Likewise.
	(md_apply_fix): Likewise.
2001-01-03 10:03:46 +00:00
Richard Henderson
0a9ef43907 * as.h (rs_align_test): New.
* frags.c (NOP_OPCODE): Move default from read.c.
	(MAX_MEM_FOR_RS_ALIGN_CODE): New default.
	(frag_align_code): New.
	* frags.h (frag_align_code): Declare.
	* read.c (NOP_OPCODE): Remove.
	(do_align): Use frag_align_code.
	* write.c (NOP_OPCODE): Remove.
	(get_recorded_alignment): New.
	(cvt_frag_to_fill): Handle rs_align_test.
	(relax_segment): Likewise.
	(subsegs_finish): Align last subseg in section to the
	section alignment.  Use frag_align_code.
	* write.h (get_recorded_alignment): Declare.
	* config/obj-coff.c (size_section): Handle rs_align_test.
	(fill_section, fixup_mdeps): Likewise.
	(write_object_file): Use frag_align_code.

	* config/tc-alpha.c (alpha_align): Use frag_align_code.
	(alpha_handle_align): New.
	* config/tc-alpha.h (HANDLE_ALIGN): New.
	(MAX_MEM_FOR_RS_ALIGN_CODE): New.

	* config/tc-i386.h (md_do_align): Use frag_align_code.
	(MAX_MEM_FOR_RS_ALIGN_CODE): New.

	* config/tc-ia64.c (ia64_md_do_align): Don't do code alignment.
	(ia64_handle_align): New.
	* config/tc-ia64.h (HANDLE_ALIGN): New.
	(MAX_MEM_FOR_RS_ALIGN_CODE): New.

	* config/tc-m32r.c (m32r_do_align): Remove.
	(m32r_handle_align): New.
	(fill_insn): Use frag_align_code.
	* config/tc-m32r.h (md_do_align): Remove.
	(HANDLE_ALIGN, MAX_MEM_FOR_RS_ALIGN_CODE): New.
	* config/tc-m88k.c, config/tc-m88k.h: Similarly.
	* config/tc-mips.c, config/tc-mips.h: Similarly.

	* config/tc-sh.c (sh_cons_align): Use rs_align_test.
	(sh_handle_align): Likewise.  Handle rs_align_code.
	(sh_do_align): Remove.
	* config/tc-sh.h (md_do_align): Remove.
	(MAX_MEM_FOR_RS_ALIGN_CODE): New.

	* config/tc-sparc.c (sparc_cons_align): Use rs_align_test.
	(sparc_handle_align): Likewise.  Handle rs_align_code.
	* config/tc-sparc.h (md_do_align): Remove.
	(MAX_MEM_FOR_RS_ALIGN_CODE): New.
2000-12-28 10:07:56 +00:00
DJ Delorie
3cd4dda73e * config/tc-d10v.c (md_assemble): set prev_seg and prev_subseg
when we assemble the first half of a pair.
2000-12-22 22:06:32 +00:00