Commit Graph

109 Commits

Author SHA1 Message Date
Jakub Jelinek db6751f2e7 * elf-bfd.h (enum elf_reloc_type_class): New.
(struct elf_backend_data): Add elf_backend_reloc_type_class.
	(_bfd_elf_reloc_type_class): New.
	* elfxx-target.h (elf_backend_reloc_type_class): Define.
	(elfNN_bed): Add elf_backend_reloc_type_class.
	* elf.c (_bfd_elf_reloc_type_class): New.
	* elf32-i386.c (elf_i386_check_relocs): Set DF_TEXTREL if the reloc
	is against read-only section.
	(elf_i386_size_dynamic_sections): Use DF_TEXTREL flag instead of
	looking up section names for DT_TEXTREL.
	(elf_i386_reloc_type_class): New.
	(elf_backend_reloc_type_class): Define.
	* elf32-sparc.c (elf32_sparc_check_relocs): Set DF_TEXTREL if the
	reloc is against read-only section.
	(elf32_sparc_size_dynamic_sections): Use DF_TEXTREL flag instead of
	looking up section names for DT_TEXTREL.
	(elf32_sparc_reloc_type_class): New.
	(elf_backend_reloc_type_class): Define.
	* elf64-sparc.c (sparc64_elf_check_relocs): Set DF_TEXTREL if the
	reloc is against read-only section.
	(sparc64_elf_size_dynamic_sections): Use DF_TEXTREL flag instead of
	looking up section names for DT_TEXTREL.
	(sparc64_elf_reloc_type_class): New.
	(elf_backend_reloc_type_class): Define.
	* elfxx-ia64.c (struct elfNN_ia64_link_hash_table): Add reltext field.
	(elfNN_ia64_hash_table_create): Clear ia64_info.
	(get_reloc_section): Set DF_TEXTREL if the reloc is against read-only
	section.
	(elfNN_ia64_size_dynamic_sections): Use ia64_info->reltext flag
	instead of looking up section names for DT_TEXTREL.
	(elfNN_ia64_reloc_type_class): New.
	(elf_backend_reloc_type_class): Define.
	* elflink.h (size_dynamic_sections): Add spare DT_NULL tags.
	(struct elf_link_sort_rela): New.
	(elf_link_sort_cmp1, elf_link_sort_cmp2, elf_link_sort_relocs): New.
	(elf_bfd_final_link): Call elf_link_sort_relocs.
	Convert one spare DT_NULL into DT_RELCOUNT resp. DT_RELACOUNT if
	necessary.

	* bfdlink.h (struct bfd_link_info): Add combreloc and
	spare_dynamic_tags fields.

	* emultempl/elf32.em (place_orphan): Place orphan .rel* sections
	into .rel.dyn resp. .rela.dyn if combreloc.
	(get_script): If .x linker script is equal to .xn, only put it
	once into the binary.
	Add .xc and .xsc scripts.
	(parse_args): Handle -z combreloc and -z nocombreloc.
	* scripttempl/elf.sc (.rela.sbss): Fix a typo.
	For .xc and .xsc scripts put all .rel* or .rela* input sections
	but .rel*.plt and PLT-like sections into .rel.dyn resp. .rela.dyn.
	* genscripts.sh (GENERATE_COMBRELOC_SCRIPT): Set if SCRIPT_NAME
	is elf.
	Strip trailing whitespace from script.
	Generate .xc and .xsc scripts if requested.
	* ldmain.c (main): Initialize link_info.combreloc and
	link_info.spare_dynamic_tags.
	* lexsup.c (OPTION_SPARE_DYNAMIC_TAGS): Define.
	(ld_options): Add --spare-dynamic-tags option.
	(parse_args): Likewise.
	* ld.texinfo: Document -z combreloc and -z nocombreloc.
	* ldint.texinfo: Document .xc and .xsc linker scripts.
	* NEWS: Add notes about -z combreloc and SHF_MERGE.
2001-08-23 15:14:18 +00:00
DJ Delorie da4d4077bc merge from gcc 2001-08-23 14:51:49 +00:00
DJ Delorie f01b59ed06 merge from gcc 2001-08-22 02:12:15 +00:00
DJ Delorie 8e777d6aa9 merge from gcc 2001-08-21 15:19:19 +00:00
Andrew Cagney eb82859947 * floatformat.h (floatformat_arm_ext): Document as deprecated.
(floatformat_arm_ext_big, floatformat_arm_ext_littlebyte_bigword)
(floatformat_ia64_spill_little, floatformat_ia64_quad_little)
(floatformat_ia64_spill_big, floatformat_ia64_quad_big)
(floatformat_m88110_harris_ext): Declare.
2001-08-21 00:20:07 +00:00
DJ Delorie 562c4c36aa merge from gcc 2001-08-18 23:47:14 +00:00
DJ Delorie 8fc3479902 merge from gcc 2001-08-17 06:33:05 +00:00
Andrew Cagney 3ea71002e4 (lbasename): Change function declaration to return a const char pointer. 2001-08-10 23:46:17 +00:00
Richard Sandiford a58ec95a7e * opcode/mips.h (INSN_GP32): Remove.
(OPCODE_IS_MEMBER): Remove gp32 parameter.
	(M_MOVE): New macro identifier.
2001-08-10 16:20:43 +00:00
DJ Delorie d039236d04 merge from gcc 2001-08-02 23:27:47 +00:00
Charles Wilson 3ede731b30 * bfdlink.h (struct bfd_link_info): add new boolean
field pei386_auto_import.
2001-08-02 23:07:10 +00:00
Aldy Hernandez 92714f9468 2001-08-01 Aldy Hernandez <aldyh@redhat.com>
* include/opcode/mips.h (INSN_ISA_MASK): Nuke bits 12-15.
2001-08-01 11:33:45 +00:00
DJ Delorie 6ad8a379a0 merge from gcc 2001-07-19 00:04:29 +00:00
Jeff Johnston 3d5c4f1086 2001-07-12 Jeff Johnston <jjohnstn@redhat.com>
* opcode/cgen.h (CGEN_INSN): Add regex support.
        (build_insn_regex): Declare.
2001-07-12 21:20:59 +00:00
DJ Delorie 2a6ef46975 merge from gcc 2001-07-11 00:15:54 +00:00
Hans-Peter Nilsson 7be4069c7e * bfdlink.h (struct bfd_link_info): New member export_dynamic. 2001-06-15 12:57:02 +00:00
Alan Modra 5a109b6767 Fix some entries. 2001-05-28 10:37:50 +00:00
DJ Delorie e05c6d27bf merge from gcc 2001-05-16 21:04:30 +00:00
DJ Delorie 6112b8746a merge from gcc 2001-05-11 20:22:28 +00:00
Jakub Jelinek 579f31ac74 * elfxx-ia64.c (is_unwind_section_name): Consider linkonce unwind
sections as well.
	(elfNN_ia64_final_write_processing): Map .gnu.linkonce.ia64unw.FOO
	to .gnu.linkonce.t.FOO text section.

	* readelf.c (process_unwind): Print all unwind sections, not just
	one.

	* config/tc-ia64.c (special_linkonce_name): New.
	(make_unw_section): Map .gnu.linkonce.t.FOO text section into
	.gnu.linkonce.ia64unw{,i}.FOO.
	(ia64_elf_section_type): Handle .gnu.linkonce.ia64unw{,i}.FOO.
	(dot_endp): Add comment about it.

	* elf/ia64.h (ELF_STRING_ia64_unwind_once): Define.
	(ELF_STRING_ia64_unwind_info_once): Define.

	* emulparams/elf64_ia64.sh (OTHER_READONLY_SECTIONS): Put
	.gnu.linkonce.ia64unw{,i} sections into corresponding .IA_64.unwind*
	output sections.
	* emulparams/elf64_aix.sh (OTHER_READONLY_SECTIONS): Likewise.
2001-05-11 12:36:47 +00:00
DJ Delorie 457161bf17 merge from gcc 2001-05-08 14:35:18 +00:00
DJ Delorie e00bc6a7ba merge from gcc 2001-05-07 16:21:15 +00:00
Nick Clifton 87e6d78217 Add openRISC support in opcodes 2001-04-27 13:34:20 +00:00
Daniel Berlin 400ee7e1e2 2001-04-15 Daniel Berlin <dan@cgsoftware.com>
* ternary.c: New file - Ternary search tree implementation.

2001-04-15  Daniel Berlin  <dan@cgsoftware.com>

	* ternary.h: New file - Ternary search tree header.
2001-04-16 14:10:14 +00:00
Jakub Jelinek f5fa8ca231 bfd/
* libbfd-in.h (_bfd_merge_section): New.
	(_bfd_write_merged_section): New.
	(_bfd_merged_section_offset): New.
	* libbfd.h: Rebuilt.
	* linker.c (_bfd_generic_link_output_symbols): Handle
	discard_sec_merge.
	* aoutx.h (aout_link_write_symbols): Likewise.
	* pdp11.c (aout_link_write_symbols): Likewise.
	* elflink.h (elf_link_add_object_symbols): Call _bfd_merge_section.
	(elf_bfd_final_link): Adjust global symbols pointing into SEC_MERGE
	sections.
	(elf_link_sec_merge_syms): New.
	(elf_link_input_bfd): Call _bfd_merged_section_offset
	and _bfd_write_merged_section.
	Handle discard_sec_merge.
	* elf-bfd.h (struct elf_link_hash_table): Add merge_info
	field.
	(struct bfd_elf_section_data): Likewise.
	* elf.c (_bfd_elf_make_section_from_shdr): Set SEC_MERGE and
	SEC_STRINGS section flags and entsize from their ELF counterparts.
	(_bfd_elf_link_hash_table_init): Initialize merge_info.
	(elf_fake_sections): Set SHF_MERGE, SHF_STRINGS and sh_entsize
	from their BFD counterparts.
	* merge.c: New file.
	* Makefile.am: Add strtab.lo.
	* Makefile.in: Rebuilt.
include/
	* bfdlink.h (bfd_link_discard): Add discard_sec_merge.
gas/
	* config/obj-elf.c (obj_elf_change_section): Add entsize argument,
	handle SHF_MERGE and SHF_STRINGS.
	(obj_elf_parse_section_letters): Set SHF_MERGE and SHF_STRINGS.
	(obj_elf_section): Allow additional argument specifying entity size.
	* write.c (adjust_reloc_syms): Keep relocations against local symbols
	in SEC_MERGE sections.
ld/
	* ldmain.c (main): Default to discard_sec_merge.
	* lexsup.c (OPTION_DISCARD_NONE): Define.
	(ld_options): Add --discard-none.
	(parse_args): Handle OPTION_DISCARD_NONE.
	* ldlang.c (wild_doit): SEC_MERGE should be set in the output
	section only if SEC_MERGE and SEC_STRINGS flags and entsize of
	all its input sections match.
2001-04-13 00:34:36 +00:00
DJ Delorie d969735448 merge from gcc 2001-04-04 01:16:27 +00:00
DJ Delorie 129e8d96a5 merge from gcc 2001-03-31 19:05:20 +00:00
Jim Blandy e61231f114 * libiberty/cp-demangle.c (struct demangling_def): New fields:
is_constructor and is_destructor.
(demangling_new): Initialize them.
(demangle_ctor_dtor_name): Set them, if we detect a constructor
or destructor.
(demangle_v3_with_details, is_gnu_v3_mangled_ctor,
is_gnu_v3_mangled_dtor): New functions.

* include/demangle.h (enum gnu_v3_constructor_kinds,
is_gnu_v3_mangled_ctor, enum gnu_v3_destructor_kinds,
is_gnu_v3_mangled_dtor): New declarations.
2001-03-20 18:22:38 +00:00
DJ Delorie 5df9ca2b80 merge from gcc 2001-03-14 21:30:22 +00:00
DJ Delorie 7a008bcb7b Fix minor formatting bugs. 2001-03-14 20:17:36 +00:00
Nick Clifton 4f1d9bd8e2 Fix typos in ChangeLogs; add coff/external.h; fix copyright dates 2001-03-14 02:27:44 +00:00
DJ Delorie 8aa30e60ce merge from gcc 2001-03-10 22:23:50 +00:00
DJ Delorie 30673bf511 merge from gcc 2001-03-06 18:27:14 +00:00
DJ Delorie d84829cc79 merge from gcc 2001-03-02 02:12:03 +00:00
Nick Clifton e135f41bc2 Add PDP-11 support 2001-02-18 23:33:11 +00:00
Nick Clifton a85d7ed0f0 Add s390 support 2001-02-10 00:58:38 +00:00
Nick Clifton 0d2bcfafbf Updated ARC assembler from arccores.com 2001-01-11 21:20:20 +00:00
Phil Blundell 77800f4afb Update address for bug reports. 2001-01-09 21:05:35 +00:00
DJ Delorie a969366f78 * COPYING: Update to current
ftp://ftp.gnu.org/pub/gnu/Licenses/COPYING-2.0 (fixes references
to 19yy as example year in copyright notice).
2000-12-19 22:01:20 +00:00
Hans-Peter Nilsson ca6d9fb3f0 * dis-asm.h (struct disassemble_info): New member "section".
(INIT_DISASSEMBLE_INFO_NO_ARCH): Initialize private_data member.
	Initialize section member.
2000-12-18 23:19:55 +00:00
DJ Delorie 85ec56b3e2 fix formatting 2000-12-17 03:09:45 +00:00
DJ Delorie 328cd6e949 * safe-ctype.h: Make code work on all targets and not just on
targets where a char is 8 bits.
2000-12-17 03:09:01 +00:00
Nick Clifton b79e8c7865 Add link option to allow undefiedn symbols in shared libraries 2000-12-12 20:53:02 +00:00
Christopher Faylor 2c6c601812 * safe-ctype.h: New file. 2000-12-08 03:26:46 +00:00
DJ Delorie 324069ad94 * getopt.h obstack.h: Standarize copyright statement. 2000-12-07 02:06:09 +00:00
DJ Delorie f93eaf706d * demangle.h: Change "new_abi" to "v3" everywhere. 2000-12-05 16:49:47 +00:00
DJ Delorie b13291a979 * libiberty.h: Move #includes to top. Prototype xmalloc_failed. 2000-11-29 20:14:48 +00:00
Hans-Peter Nilsson 6e53a71409 Correct date and style of last entry 2000-11-15 12:01:15 +00:00
Hans-Peter Nilsson 4cabd1d10f * demangle.h: Add gnat and java demangle styles. 2000-11-15 11:47:51 +00:00
Hans-Peter Nilsson 82e7f05e13 * hashtab.h (struct htab): Add member return_allocation_failure.
(htab_try_create): New prototype.  Mention which functions may
	return NULL when this is used.
2000-11-04 07:48:51 +00:00