Commit Graph

1478 Commits

Author SHA1 Message Date
75546193ec Support for tic54x target. 2000-05-06 17:14:34 +00:00
b5c5e30da7 bfd:
* coffcode.h (coff_set_arch_mach_hook, coff_set_flags):
	Change U802TOC64MAGIC to U803XTOCMAGIC.

include:
	* coff/rs6k64.h (U802TOC64MAGIC): Change to U803XTOCMAGIC.
2000-05-06 01:41:50 +00:00
cf3eb87bef * ppc.h (PPC_OPCODE_ALTIVEC): New opcode flag for vector unit.
(PPC_OPERAND_VR): New operand flag for vector registers.
2000-05-03 22:19:45 +00:00
ea65fddc27 2000-05-02 H.J. Lu <hjl@gnu.org>
* common.h (ELFOSABI_NONE): Renamed from ELFOSABI_SYSV.
	(ELFOSABI_MODESTO): Defined.
	(ELFOSABI_OPENBSD): Likewise.
2000-05-02 17:49:32 +00:00
f8c723b8f8 * h8300.h (EOP): Add missing initializer. 2000-05-01 16:55:50 +00:00
bb29b5f2bc Add XCOFF64 support.
bfd:
	* Makefile.am (coff64-rs6000.lo): New rule.
	* Makefile.in: Regenerate.
	* coff-rs6000.c (xcoff_mkobject, xcoff_copy_private_bfd_data,
	xcoff_is_local_label_name, xcoff_rtype2howto,
	xcoff_reloc_type_lookup, xcoff_slurp_armap, xcoff_archive_p,
	xcoff_read_ar_hdr, xcoff_openr_next_archived_file, xcoff_write_armap,
	xcoff_write_archive_contents): No longer static, and prefix with _bfd_.
	(NO_COFF_SYMBOLS): Define.
	(xcoff64_swap_sym_in, xcoff64_swap_sym_out, xcoff64_swap_aux_in,
	xcoff64_swap_aux_out): New functions; handle xcoff symbol tables
	internally.
	(MINUS_ONE): New macro.
	(xcoff_howto_tabl, xcoff_reloc_type_lookup): Add 64 bit POS
	relocation.
	(coff_SWAP_sym_in, coff_SWAP_sym_out, coff_SWAP_aux_in,
	coff_SWAP_aux_out): Map to the new functions.
	* coff64-rs6000.c: New file.
	* libcoff.h (bfd_coff_backend_data): Add new fields
	_bfd_coff_force_symnames_in_strings and
	_bfd_coff_debug_string_prefix_length.
	(bfd_coff_force_symnames_in_strings,
	bfd_coff_debug_string_prefix_length): New macros for above fields.
	* coffcode.h (coff_set_arch_mach_hook): Handle XCOFF64 magic.
	Set machine to 620 for XCOFF64.  Use bfd_coff_swap_sym_in instead
	of using coff_swap_sym_in directly.
	(FORCE_SYMNAMES_IN_STRINGS): New macro, defined for XCOFF64.
	(coff_set_flags) Set magic for XCOFF64.
	(coff_compute_section_file_positions): Add symbol name length to
	string section length if bfd_coff_debug_string_prefix_length is
	true.
	(coff_write_object_contents): Don't do reloc overflow for XCOFF64.
	(coff_slurp_line_table): Use bfd_coff_swap_lineno_in instead of
	using coff_swap_lineno_in directly.
	(bfd_coff_backend_data): Add _bfd_coff_force_symnames_in_strings
	and _bfd_coff_debug_string_prefix_length fields.
	* coffgen.c (coff_fix_symbol_name, coff_write_symbols): Force
	symbol names into strings table when
	bfd_coff_force_symnames_in_strings is true.
	* coffswap.h (MAX_SCNHDR_NRELOC, MAX_SCNHDR_NLNNO, GET_RELOC_VADDR,
	SET_RELOC_VADDR): New macros.
	(coff_swap_reloc_in, coff_swap_reloc_out): Use above macros.
	(coff_swap_aux_in, coff_swap_aux_out): Remove RS6000COFF_C
	code.
	(coff_swap_aouthdr_in, coff_swap_aouthdr_out): Handle XCOFF64
	changes within RS6000COFF_C specific code.
	(coff_swap_scnhdr_out): Use PUT_SCNHDR_NLNNO, PUT_SCNHDR_NRELOC,
	MAX_SCNHDR_NRELOC, and MAX_SCNHDR_NLNNO.
	* reloc.c (bfd_perform_relocation, bfd_install_relocation):
	Extend existing hack on target name.
	* xcofflink.c (XCOFF_XVECP): Extend existing hack on
	target name.
	* coff-tic54x.c (ticof): Keep up to date with new fields
	in bfd_coff_backend_data.
	* config.bfd: Add bfd_powerpc_64_arch to targ_arch and define
	targ_selvecs to include rs6000coff64_vec for rs6000.
	* configure.in: Add rs6000coff64_vec case.
 	* cpu-powerpc.c: New bfd_arch_info_type.

	gas:
	* as.c (parse_args): Allow md_parse_option to override -a listing
	option.
	* config/obj-coff.c (add_lineno): Change type of offset parameter
	from "int" to "bfd_vma."
	* config/tc-ppc.c (md_pseudo_table): Add "llong" and "machine."
	(ppc_mach, ppc_subseg_align, ppc_target_format): New.
	(ppc_change_csect): Align correctly for XCOFF64.
	(ppc_machine): New function, which discards "ppc_machine" line.
	(ppc_tc): Cons for 8 when code is 64 bit.
	(md_apply_fix3): Don't check operand->insert.  Handle 64 bit
	relocations.
	(md_parse_option): Handle -a64 and -a32.
	(ppc_xcoff64): New.
	* config/tc-ppc.h (TARGET_MACH): Define.
	(TARGET_FORMAT): Move to function.
	(SUB_SEGMENT_ALIGN): Use ppc_subseg_align.

	include:
	* include/coff/rs6k64.h: New file.

	opcodes:
	* configure.in: Add bfd_powerpc_64_arch.
	* disassemble.c (disassembler): Use print_insn_big_powerpc for
	64 bit code.
2000-04-26 15:09:44 +00:00
2d6fec0fc1 * hppa.h (pa_opcodes): New opcodes for PA2.0 wide mode
forms of ld/st{b,h,w,d} and fld/fst{w,d} (16-bit displacements).
        New operand types l,y,&,fe,fE,fx added to support above forms.
        (pa_opcodes): Replaced usage of 'x' as source/target for
        floating point double-word loads/stores with 'fx'.

Fr
2000-04-21 21:04:04 +00:00
4501dfbc42 IA-64 ELF support. 2000-04-21 20:22:23 +00:00
e11ddfb02d Clean up load page support for tic54x. 2000-04-18 02:21:27 +00:00
14be1d4417 Initial patches for IA-64 EFI (64-bit PE) support.
* pe.h (PEP64AOUTHDR): New header for PE+.
	(PEP64AOUTSZ): New macro.
	(IMAGE_SUBSYSTEM_UNKNOWN): New macro.
	(IMAGE_SUBSYSTEM_NATIVE): Ditto.
	(IMAGE_SUBSYSTEM_WINDOWS_GUI): Ditto.
	(IMAGE_SUBSYSTEM_WINDOWS_CUI): Ditto.
	(IMAGE_SUBSYSTEM_POSIX_CUI): Ditto.
	(IMAGE_SUBSYSTEM_WINDOWS_CE_GUI): Ditto.
	(IMAGE_SUBSYSTEM_EFI_APPLICATION): Ditto.
	(IMAGE_SUBSYSTEM_EFI_BOOT_SERVICE_DRIVER): Ditto.
	(IMAGE_SUBSYSTEM_EFI_RUNTIME_DRIVER): Ditto.
	* internal.h (PE_DEF_FILE_ALIGNMENT): Define only if not defined
	already.
	* ia64.h: New file.
2000-04-17 23:45:22 +00:00
405713cfb3 2000-04-14 H.J. Lu <hjl@gnu.org>
* common.h (ELFOSABI_TRUE64): Renamed to ELFOSABI_TRU64.
2000-04-14 19:32:44 +00:00
f234d21a3c 2000-04-14 H.J. Lu <hjl@gnu.org>
* common.h (ELFOSABI_NETBSD): Defined.
	(ELFOSABI_HURD): Likewise.
	(ELFOSABI_SOLARIS): Likewise.
	(ELFOSABI_MONTEREY): Likewise.
	(ELFOSABI_IRIX): Likewise.
	(ELFOSABI_FREEBSD): Likewise.
	(ELFOSABI_TRUE64): Likewise.
2000-04-14 19:14:15 +00:00
88adca8b0e Remove U suffix from constants for K&R compilers.
Fix a couple of 64 bit nits.
2000-04-13 01:08:05 +00:00
2c3b166657 Mods to allow compilation of BFD all targets. 2000-04-11 04:11:03 +00:00
d5337b4c13 Fix copyright comments and file comments. 2000-04-08 17:26:16 +00:00
65c0e6e68c Merge arm-oabi.h into arm.h 2000-04-08 00:09:26 +00:00
2cf1695b81 BFD and include/coff support for tic54x target. 2000-04-07 17:06:58 +00:00
2b6af862fe Add definitions of flags in e_flags field from version A-08 of ARM ELF spec. 2000-04-06 23:18:18 +00:00
9e276d99e9 * splay-tree.h (splay_tree_remove): Declare. 2000-04-06 00:15:35 +00:00
66d2d2638e sh-dsp REPEAT support:
opcodes:

        * sh-opc.h (sh_nibble_type): Remove DISP_8 and DISP_4.
        Split IMM_[48]{,BY[24]} into IMM[01]_[48]{,BY[24]}.  Add REPEAT.
        (sh_arg_type): Add A_PC.
        (sh_table): Update entries using immediates.  Add repeat.
        * sh-dis.c (print_insn_shx): Remove DISP_8 and DISP_4.
        Split IMM_[48]{,BY[24]} into IMM[01]_[48]{,BY[24]}.  Add REPEAT.

gas:

        * config/tc-sh.c (immediate): Delete.
        (sh_operand_info): Add immediate member.
        (parse_reg): Use A_PC for pc.
        (parse_exp): Add second argument 'op'.  All callers changed.
        (parse_at): Expect pc to be coded as A_PC.
        Use immediate field in *op.
        (insert): Add fourth argument 'op'.  All callers changed.
        (build_relax): Add second argument 'op'.  All callers changed.
        (insert_loop_bounds): New function.
        (build_Mytes): Remove DISP_4.
        Split IMM_[48]{,BY[24]} into IMM[01]_[48]{,BY[24]}.  Add REPEAT.
        (assemble_ppi): Use immediate field in *operand.
        (sh_force_relocation): Handle BFD_RELOC_SH_LOOP_{START,END}.
        (md_apply_fix): Likewise.
        (tc_gen_reloc): Likewise.  Check for a pcrel BFD_RELOC_SH_LABEL.

include/coff:

        * sh.h (R_SH_LOOP_START, R_SH_LOOP_END): Define.

include/elf:

        * sh.h (R_SH_LOOP_START, R_SH_LOOP_END): New RELOC_NUMBERs.

bfd:

        * reloc.c (_bfd_relocate_contents): Add BFD_RELOC_SH_LOOP_START and
        BFD_RELOC_SH_LOOP_END.
        * elf32-sh.c (sh_elf_howto_tab): Change special_func to
        sh_elf_ignore_reloc for all entries that sh_elf_reloc used to ignore.
        Add entries for R_SH_LOOP_START and R_SH_LOOP_END.
        (sh_elf_reloc_loop): New function.
        (sh_elf_reloc): No need to test for always-to-be-ignored relocs
        any more.
        (sh_rel): Add entries for BFD_RELOC_SH_LOOP_{START,END}.
        (sh_elf_relocate_section): Handle BFD_RELOC_SH_LOOP_{START,END}.
        * bfd-in2.h, libbfd.h: Regenerate.
2000-04-05 21:23:03 +00:00
c6e4c778eb Move translated part of bug report string back into .c files so
xgettext can find it.  Regnerate .pot files.
2000-04-04 14:32:32 +00:00
cf11ab4e66 Move bug report string to one place. 2000-04-03 14:10:04 +00:00
9115ada8ce * aout64.h (RELOC_EXT_BITS_EXTERN_BIG): Wrap definition in #ifndef.
(RELOC_EXT_BITS_EXTERN_LITTLE): Ditto.
	(RELOC_EXT_BITS_TYPE_BIG): Ditto.
	(RELOC_EXT_BITS_TYPE_SH_BIG): Ditto.
	(RELOC_EXT_BITS_TYPE_LITTLE): Ditto.
	(RELOC_EXT_BITS_TYPE_SH_LITTLE): Ditto.
2000-04-03 11:29:28 +00:00
1b3755ec07 Fix value of SHORT_A1.
Move SHORT_AR to end of list of short instructions.
2000-03-27 20:17:02 +00:00
f5e070bb37 ATMEL AVR microcontroller support. 2000-03-27 08:39:13 +00:00
114d3d3070 Mostly cosmetic. Fixes to comments. Don't start as_bad and as_warn
messages with capital.  Don't malign Unixware, malign SysV386 instead.
2000-03-26 14:13:01 +00:00
85f96eabae * partition.h: New file. 2000-03-25 02:15:38 +00:00
e06fba33fb merge from gcc 2000-03-24 21:31:21 +00:00
6bc4ac717b * internal.h: Fix a typo in the comment for R_MOVL2. 2000-03-15 21:29:17 +00:00
fca5fcb1e0 In bfd/:
* elf32-mips.c (mips_elf_next_relocation): Rename from
	mips_elf_next_lo16_relocation, and generalize to look
	for any relocation type.
	(elf_mips_howto_table): Make R_MIPS_PC16 pcrel_offset.
	(elf_mips_gnu_rel_hi16): Howto for R_MIPS_GNU_REL_HI16.
	(elf_mips_gnu_rel_lo16): Howto for R_MIPS_GNU_REL_LO16.
	(elf_mips_gnu_rel16_s2): Howto for R_MIPS_GNU_REL16_S2.
	(elf_mips_gnu_pcrel64): Howto for R_MIPS_PC64.
	(elf_mips_gnu_pcrel32): Howto for R_MIPS_PC32.
	(bfd_elf32_bfd_reloc_type_lookup): Add new relocs.
	(mips_rtype_to_howto): Likewise.
	(mips_elf_calculate_relocation): Handle new relocs.
	(_bfd_mips_elf_relocate_section): REL_HI16/REL_LO16 relocs
	are paired.  The addend for R_MIPS_GNU_REL16_S2
	is shifted right two bits.
In gas/:
	* config/tc-mips.c (mips_ip): Don't put stuff in .rodata
	when embedded-pic.

	* config/tc-mips.c (SWITCH_TABLE): The ELF embedded-pic
 	implementation doesn't have special handling for switch
 	statements.
	(macro_build): Allow for code in sections other than .text.
	(macro): Likewise.
	(mips_ip): Likewise.
	(md_apply_fix): Do pc-relative relocation madness for MIPS ELF.
  	Don't perform relocs if we will be outputting them.
	(tc_gen_reloc): For ELF, just use fx_addnumber for pc-relative
 	relocations.  Allow BFD_RELOC_16_PCREL_S2 relocs when
 	embedded-pic.
In gas/testsuite/:
	* gas/mips/empic.d: New file.
	* gas/mips/empic.s: New file.
	* gas/mips/mips16-e.d: New file.
	* gas/mips/mips16-e.s: New file.
	* gas/mips/mips16-f.d: New file.
	* gas/mips/mips16-f.s: New file.
	* gas/mips/mips.exp: Add empic, mips16-e.  Add mips16-f as an
	expected failure.
In include/elf:
	* mips.h: Add R_MIPS_GNU_REL_HI16, R_MIPS_GNU_REL_LO16,
 	R_MIPS_GNU_REL16_S2, R_MIPS_PC64 and R_MIPS_PC32 relocation
 	numbers.
2000-03-11 02:16:25 +00:00
92976eab7d Apply patch for 100679 2000-03-02 23:01:40 +00:00
0f04849fd0 2000-03-01 H.J. Lu <hjl@gnu.org>
* bfdlink.h (bfd_link_callbacks): Add a boolean arg to
	the undefined_symbol callback.
2000-03-01 19:38:01 +00:00
c8ceb1b10f Defone {MIPS|SH}_PE_MAGIC 2000-02-28 18:57:53 +00:00
e53d3a5d95 Extend the i386 gas testsuite to do some tests for intel_syntax. Fix all
the errors exposed by this addition.  These were intel mode
"fi... word ptr", "fi... dword ptr", "jmp Imm seg, Imm offset", "out dx,al".
The failure with intel "out dx,al" was also present in att "out al,dx".
Extend testsuite to catch this case too.
2000-02-25 11:41:12 +00:00
7620791bd9 Rename 'flags' to 'signed_overflow_ok_p' 2000-02-24 23:57:23 +00:00
4d0ce66d1f 2000-02-24 Andrew Haley <aph@cygnus.com>
* cgen.h (CGEN_INSN_MACH_HAS_P): New macro.
        (CGEN_CPU_TABLE): flags: new field.
        Add prototypes for new functions.
2000-02-24 21:56:53 +00:00
4bc3b73cfd Add support for WinCE targeted toolchains. 2000-02-24 19:49:18 +00:00
759e2a8845 Forgot Changelog for last i386.h change. 2000-02-24 12:41:54 +00:00
df256a94d6 Correct intel_syntax fsub* and fdiv* handling. Oh, how I'd like to be rid
of UNIXWARE_COMPAT.
2000-02-24 12:40:45 +00:00
58dabf5040 Add IBM 370 support. 2000-02-23 13:52:22 +00:00
9dfc83d797 * opcode/d30v.h (FLAG_NOT_WITH_ADDSUBppp): Redefined as operation cannot
be combined in parallel with ADD/SUBppp.
2000-02-22 20:52:14 +00:00
ebb5df1ee3 Updated comment. 2000-02-22 19:59:40 +00:00
2c98de9ffa Remove use of ELF_ST_OTHER. 2000-02-22 19:56:40 +00:00
196bbedaa7 g2000-02-22 Andrew Haley <aph@cygnus.com>
* mips.h: (OPCODE_IS_MEMBER): Add comment.
2000-02-22 19:01:25 +00:00
b7c65de2b8 ChangeLog change only. 2000-02-22 16:59:39 +00:00
e40ac30be5 merge with include from egcs 2000-02-22 2000-02-22 16:40:36 +00:00
268d66eb67 This commit was generated by cvs2svn to track changes on a CVS vendor
branch.
2000-02-22 16:18:13 +00:00
929ce68fe6 import libiberty from egcs 2000-02-22 16:18:13 +00:00
95d64ccd4e 1999-12-30 Andrew Haley <aph@cygnus.com>
* mips.h (OPCODE_IS_MEMBER): Add gp32 arg.
2000-02-22 14:39:20 +00:00
9d68ec8b5c When SIM_HAVE_ENVIRONMENT: use sim_set_trace() to enable tracing
instead of sim_trace() to run the program; include support for ``-o''
option (operating environment); when a signal occurs, only continue
execution when operating environment mode.
Update d10v.
2000-02-22 08:52:20 +00:00