Commit Graph

2459 Commits

Author SHA1 Message Date
Alan Modra
1bacb52f88 daily update 2003-01-05 23:00:04 +00:00
Alan Modra
ff2d781336 daily update 2003-01-04 23:00:04 +00:00
Alan Modra
38ea52b394 daily update 2003-01-03 23:00:34 +00:00
Stan Cox
a75473eb66 * Makefile.am (ALL_MACHINES): Add cpu-iq2000.lo.
(ALL_MACHINES_CFILES): Add cpu-iq2000.c.
	(BFD32_BACKENDS): Add elf32-iq2000.lo.
	(BFD32_BACKENDS_CFILES): Add elf32-iq2000.c.
	(cpu-iq2000.lo): New target.
	* Makefile.in: Regenerate.
	* config.bfd: Handle iq2000-*-elf.
	* archures.c (bfd_architecture): Add bfd_{arch,mach}_iq2000.
	(bfd_archures_list): Add bfd_iq2000_arch.
	* configure.in: Handle bfd_elf32_iq2000_vec.
	* configure: Regenerate.
	* reloc.c: Add BFD_RELOC_IQ2000_OFFSET_16, BFD_RELOC_IQ2000_OFFSET_21,
	and BFD_RELOC_IQ2000_UHI16.
	* targets.c (bfd_elf32_iq2000_vec): Declare.
	(bfd_target_vector): Add bfd_elf32_iq2000_vec.
	* elf.c (prep_headers): Set e_machine to EM_IQ2000.
	* cpu-iq2000.c: New file.
	* elf32-iq2000.c: Likewise.
	* libbfd.h: Regenerate.
	* bfd-in2.h: Likewise.
2003-01-03 21:12:28 +00:00
Nick Clifton
aecde77ed7 oops - omitted from previous delta - a reworking of the linker relaxation code. 2003-01-03 08:21:43 +00:00
Alan Modra
9ca7f3919c daily update 2003-01-02 23:00:03 +00:00
Richard Sandiford
64543e1acf bfd/
* elfxx-mips.c: Include libiberty.h.
	(elf_mips_isa, _bfd_mips_elf_mach_extends_p): Remove.
	(mips_set_isa_flags): New function, split out from...
	(_bfd_mips_elf_final_write_processing): ...here.  Only call
	mips_set_isa_flags if the EF_MIPS_MACH bits are clear.
	(mips_mach_extensions): New array.
	(mips_32bit_flags_p): New function.
	(_bfd_mips_elf_merge_private_bfd_data): Rework architecture checks.
	Use mips_32bit_flags_p to check if one binary is 32-bit and the
	other is 64-bit.  When adopting IBFD's architecture, adopt the
	bfd_mach as well as the flags.

ld/testsuite/
	* ld-mips-elf/jr.s: New file.
	* ld-mips-elf/mips-elf-flags.exp: New test.
2003-01-02 21:31:32 +00:00
Nick Clifton
4852a44ef5 Rework IP2k linker relxation. 2003-01-02 11:26:17 +00:00
Alan Modra
0a99d72523 daily update 2003-01-01 23:00:03 +00:00
Alan Modra
3e632e7428 daily update 2002-12-31 23:00:03 +00:00
Chris Demetriou
af7ee8bfa9 [ bfd/ChangeLog ]
2002-12-30  Chris Demetriou  <cgd@broadcom.com>

	* aoutx.h (NAME(aout,machine_type)): Add bfd_mach_mipsisa32r2 case.
	* archures.c (bfd_mach_mipsisa32r2): New define.
	* bfd-in2.h: Regenerate.
	* cpu-mips.c (I_mipsisa32r2): New enum value.
	(arch_info_struct): Add entry for I_mipsisa32r2.
	* elfxx-mips.c (elf_mips_isa, _bfd_elf_mips_mach)
	(_bfd_mips_elf_print_private_bfd_data): Handle E_MIPS_ARCH_32R2.
	(_bfd_mips_elf_final_write_processing): Add
	bfd_mach_mipsisa32r2 case.
	(_bfd_mips_elf_merge_private_bfd_data): Handle merging of
	binaries marked as using MIPS32 Release 2.

[ binutils/ChangeLog ]
2002-12-30  Chris Demetriou  <cgd@broadcom.com>

	* doc/binutils.texi (objdump): Note MIPS HWR (Hardware Register)
	changes in MIPS -M options.

[ gas/ChangeLog ]
2002-12-30  Chris Demetriou  <cgd@broadcom.com>

	* configure.in: Recognize mipsisa32r2, mipsisa32r2el, and
	CPU variants.
	* configure: Regenerate.
	* config/tc-mips.c (ISA_HAS_DROR, ISA_HAS_ROR): New defines.
	(macro_build): Handle "K" operand.
	(macro2): Use ISA_HAS_DROR and ISA_HAS_ROR in the places where
	CPU_HAS_DROR and CPU_HAS_ROR are currently used.
	(mips_ip): New variable "lastpos", and implement "+A", "+B",
	and "+C" operands for MIPS32 Release 2 ins/ext instructions.
	Implement "K" operand for MIPS32 Release 2 rdhwr instruction.
	(validate_mips_insn): Implement "+" as a way to extend the
	allowed operands, and implement "K", "+A", "+B", and "+C"
	operands.
	(OPTION_MIPS32R2): New define.
	(md_longopts): Add entry for OPTION_MIPS32R2.
	(OPTION_ELF_BASE): Adjust to accomodate OPTIONS_MIPS32R2.
	(md_parse_option): Handle OPTION_MIPS32R2.
	(s_mipsset): Reimplement handling of ".set mipsN" options
	and add support for ".set mips32r2".
	(mips_cpu_info_table): Add entry for "mips32r2" (MIPS32 Release 2).
	(md_show_usage): Document "-mips32r2" option.
	* doc/as.texinfo: Document "-mips32r2" option.
	* doc/c-mips.texi: Likewise.

[ gas/testsuite/ChangeLog ]
2002-12-30  Chris Demetriou  <cgd@broadcom.com>

	* gas/mips/cp0-names-mips32r2.d: New test.
	* gas/mips/hwr-names-mips32r2.d: New test.
	* gas/mips/hwr-names-numeric.d: New test.
	* gas/mips/hwr-names.s: New test source file.
	* gas/mips/mips32r2.d: New test.
	* gas/mips/mips32r2.s: New test source file.
	* gas/mips/mips32r2-ill.l: New test.
	* gas/mips/mips32r2-ill.s: New test source file.
	* gas/mips/mips.exp: Add mips32r2 architecture data array
	entry.  Run new tests mentioned above.

[ include/elf/ChangeLog ]
2002-12-30  Chris Demetriou  <cgd@broadcom.com>

	* mips.h (E_MIPS_ARCH_32R2): New define.

[ include/opcode/ChangeLog ]
2002-12-30  Chris Demetriou  <cgd@broadcom.com>

	* mips.h: Document "+" as the start of two-character operand
	type names, and add new "K", "+A", "+B", and "+C" operand types.
	(OP_MASK_INSMSB, OP_SH_INSMSB, OP_MASK_EXTMSB)
	(OP_SH_EXTMSB, INSN_ISA32R2, ISA_MIPS32R2, CPU_MIPS32R2): New
	defines.

[ opcodes/ChangeLog ]
2002-12-30  Chris Demetriou  <cgd@broadcom.com>

	* mips-dis.c (mips_cp0_names_mips3264r2, mips_hwr_names_numeric)
	(mips_hwr_names_mips3264r2): New arrays.
	(mips_arch_choice): New "hwr_names" member.
	(mips_arch_choices): Adjust for structure change, and add a new
	entry for "mips32r2" ISA.
	(mips_hwr_names): New variable.
	(set_default_mips_dis_options): Set mips_hwr_names.
	(parse_mips_dis_option): New "hwr-names" option which sets
	mips_hwr_names, and adjust "reg-names=ARCH" to set mips_hwr_names.
	(print_insn_arg): Change return type to "int"
	and use that to indicate number of characters consumed.
	Add support for "+" operand extension character, "+A", "+B",
	"+C", and "K" operands.
	(print_insn_mips): Adjust for changes to print_insn_arg.
	(print_mips_disassembler_options): Adjust for "hwr-names"
	addition and "reg-names" change.
	* mips-opc (I33): New define (shorthand for INSN_ISA32R2).
	(mips_builtin_opcodes): Note that "nop" and "ssnop" are special
	forms of "sll".  Add new MIPS32 Release 2 instructions: ehb,
	di, ei, ext, ins, jr.hb, jalr.hb, mfhc1, mfhc2, mthc1, mthc2,
	rdhwr, rdpgpr, seb, seh, synci, wrpgpr, wsbh.
	Note that hardware rotate instructions (ror, rorv) can be
	used on MIPS32 Release 2, and add the official mnemonics
	for them (rotr, rotrv) and the similar "rotl" mnemonic for
	left-rotate.
2002-12-31 07:29:29 +00:00
Alan Modra
e0068bfda2 daily update 2002-12-30 23:00:03 +00:00
Nick Clifton
2469cfa284 Add support for msp430. 2002-12-30 19:25:13 +00:00
Alan Modra
99fc8c7dc5 daily update 2002-12-29 23:00:05 +00:00
Alan Modra
8a4efc1ab7 daily update 2002-12-28 23:00:03 +00:00
Jakub Jelinek
eecdbe5279 * elf.c (elf_sort_sections): Don't reorder .tbss.
(assign_file_positions_for_segments): Only adjust off/voff
	for increased alignment in PT_LOAD or PT_NOTE segment,
	but adjust p_filesz for .tbss too.  in PT_LOAD consider
	.tbss to have zero memory size.
	(copy_private_bfd_data) [SECTION_SIZE]: Define.
	[IS_CONTAINED_BY_VMA, IS_CONTAINED_BY_LMA]: Use it.
	[INCLUDE_SECTION_IN_SEGMENT]: Only put SHF_TLS sections
	into PT_TLS segment.  Never put SHF_TLS sections in
	segments other than PT_TLS or PT_LOAD.

	* elf64-alpha.c (elf64_alpha_finish_dynamic_sections): Clear .plt
	sh_entsize.
2002-12-28 21:15:35 +00:00
Alan Modra
f48c1c9e9a daily update 2002-12-27 23:00:33 +00:00
Alan Modra
6c6c88e18c daily update 2002-12-26 23:00:04 +00:00
Alan Modra
0a4ee94c8f daily update 2002-12-25 23:00:04 +00:00
Alan Modra
7690a6b38a daily update 2002-12-24 23:00:04 +00:00
DJ Delorie
213e90f483 * coff64-rs6000.c (xcoff64_ppc_relocate_section): Fix logic reversal. 2002-12-24 03:43:44 +00:00
Alan Modra
11e6387acb daily update 2002-12-23 23:00:03 +00:00
Alan Modra
7582835273 * elflink.h (elf_link_output_extsym): Heed strip_discarded. 2002-12-23 11:53:59 +00:00
Nick Clifton
312b768e2f Change linker's default behaviour - it will now reject binary files whoes
architecture it does not recognise, unless it has explicitly told to accept
them.
2002-12-23 10:45:03 +00:00
Alan Modra
aabb843608 daily update 2002-12-22 23:00:04 +00:00
Alan Modra
3e9bfb45a0 daily update 2002-12-21 23:00:03 +00:00
Nick Clifton
63222ec9df Disable WINCE workaround that subtracted 8 from pc relative relocations. 2002-12-21 02:21:00 +00:00
Alan Modra
be7311b0c4 daily update 2002-12-20 23:00:05 +00:00
Kazu Hirata
19852a2abd * coff-h8300.c: Fix comment typos.
* coffcode.h: Likewise.
	* cpu-cris.c: Likewise.
	* elf32-vax.c: Likewise.
	* genlink.h: Likewise.
	* linker.c: Likewise.
	* som.c: Likewise.
	* tekhex.c: Likewise.
	* vms-misc.c: Likewise.
2002-12-20 22:41:13 +00:00
DJ Delorie
5fd6399981 * reloc.c: Add BFD_RELOC_XSTORMY16_12.
* libbfd.h: Regenerate.
* bfd-in2.h: Regenerate.
* elf32-xstormy16.c (xstormy16_elf_howto): Add R_XSTORMY16_12.
(xstormy16_reloc_map): Add R_XSTORMY16_12.
2002-12-20 21:13:19 +00:00
Kazu Hirata
4ee79850e0 * doc/bfdint.texi: Fix typos. 2002-12-20 00:35:03 +00:00
Alan Modra
66e25bab62 * acinclude.m4 (AM_INSTALL_LIBBFD): Do not rely on "test -o".
* configure.in (build-warnings): Likewise.
	(Horrible hacks to build DLLs on Windows): Do not rely on "tail -1".
	* aclocal.m4: Regenerate.
	* config.in: Regenerate.
	* configure: Regenerate.
2002-12-20 00:09:54 +00:00
Alan Modra
130e217850 daily update 2002-12-19 23:00:04 +00:00
Alan Modra
0171ee92b2 * coff-h8300.c: Include libiberty.h.
(h8300_reloc16_extra_cases): Check the hash table creator before
	referencing h8300 specific fields.  Stash the hash table pointer
	in a local var.  Comment typo fixes.
	(h8300_bfd_link_add_symbols): Likewise.
2002-12-19 01:58:53 +00:00
Alan Modra
e5982cf5ba daily update 2002-12-18 23:04:35 +00:00
Alan Modra
7dc77aaa7d * bfd/reloc.c (struct reloc_howto_struct): Revise src_mask and
dst_mask comments.
	* bfd-in2.h: Regenerate.
2002-12-18 13:47:03 +00:00
Alan Modra
47388f4cc3 * elf32-ppc.c (ppc_elf_relocate_section): Reorganize dynamic reloc
code a little.  Comment on dynamic relocs against section symbols.
2002-12-18 13:16:35 +00:00
Alan Modra
2e51bbe3d2 daily update 2002-12-17 23:00:04 +00:00
Alan Modra
1b3e374430 * configure.host (ia64-*-hpux*): Support 64 bit targets using
the HP compiler's "long long".
2002-12-17 04:17:21 +00:00
DJ Delorie
46f2b5418f * elf32-xstormy16.c (xstormy16_elf_howto): Add R_XSTORMY16_LO16
and R_XSTORMY16_HI16) howto entries.
(xstormy16_reloc_map): Map R_XSTORMY16_{LO,HI}16 to BFD_RELOC_{LO,HI}16.
(xstormy16_info_to_howto_rela): Use R_XSTORMY16_GNU_VTINHERIT to
determine the start of the second reloc table.
2002-12-17 03:54:15 +00:00
Alan Modra
28274f1d5a daily update 2002-12-16 23:00:05 +00:00
Nick Clifton
af738ea75a Fix the reading of the debugging information of Tru64/Alpha binaries that
are produced by recent Compaq compilers.
2002-12-16 16:25:06 +00:00
Alan Modra
847b352715 daily update 2002-12-15 23:35:50 +00:00
Alan Modra
1b9b1dcc84 daily update 2002-12-14 23:00:05 +00:00
Alan Modra
eaab896093 daily update 2002-12-13 23:00:06 +00:00
Alan Modra
cc6a87da5e daily update 2002-12-12 23:00:04 +00:00
Alexandre Oliva
5354b572b3 * elf-m10300.c (elf32_mn10300_link_hash_newfunc): Reorder
initializers to match struct declaration.
2002-12-12 21:54:32 +00:00
Alan Modra
ab3acfbe8d Comment typo fixes. 2002-12-12 10:26:01 +00:00
Alan Modra
6348e046b7 * elf32-i386.c (elf_i386_finish_dynamic_sections): Add output_offset
to DT_JMPREL.  Use srelplt input section size for DT_PLTRELSZ and
	DT_RELSZ adjustment, not output section.  Avoid writing tags when
	unchanged.  Don't assume linker script is sane, adjust DT_REL too.
	* elf32-hppa.c (elf32_hppa_finish_dynamic_sections): Just use raw
	size of srelplt for DT_PLTRELSZ.  Use srelplt input section size for
	DT_RELASZ adjustment, not output section.  Avoid writing tags when
	unchanged.  Adjust DT_RELA.
	* elf64-ppc.c (ppc64_elf_finish_dynamic_sections): Tweaks for better
	formatting.  Avoid writing tags when unchanged.  Adjust DT_RELA.
2002-12-12 10:17:14 +00:00
Alexandre Oliva
2e7a68a82f * elfxx-mips.c (mips_elf_calculate_relocation): Don't divide
addend by 4.
2002-12-12 04:42:06 +00:00