Age | Commit message (Collapse) | Author | Files | Lines |
|
_bfd_target_vector and not bfd_target_vector.
|
|
* elfcode.h: Include "libiberty.h".
* elflink.h (elf_link_add_object_symbols): Set
elf_dt_name (abfd) to basename of the bfd filename.
(NAME(bfd_elf,size_dynamic_sections)): Set vn_file to basename
of the bfd filename.
|
|
(alpha_ecoff_bad_format_hook): Likewise.
(alpha_adjust_reloc_out): Likewise.
(alpha_bfd_reloc_type_lookup): Likewise.
(alpha_convert_external_reloc): Likewise.
|
|
(elf_generic_info_to_howto_rel): Likewise.
* coff-alpha.c (reloc_nil): Likewise.
(alpha_ecoff_bad_format_hook): Likewise.
(alpha_adjust_reloc_out): Likewise.
(alpha_bfd_reloc_type_lookup): Likewise.
(alpha_convert_external_reloc): Likewise.
* elf64-alpha.c (elf64_alpha_reloc_nil): Likewise.
(elf64_alpha_reloc_bad): Likewise.
(elf64_alpha_reloc_gpdisp): Likewise.
(elf64_alpha_bfd_reloc_type_lookup): Likewise.
(elf64_alpha_info_to_howto): Likewise.
(elf64_alpha_add_symbol_hook): Likewise.
(elf64_alpha_create_got_section): Likewise.
(elf64_alpha_is_local_label_name): Likewise.
(elf64_alpha_merge_ind_symbols): Likewise.
* elf64-mips.c (mips_elf64_reloc_type_lookup): Likewise.
(mips_elf64_get_reloc_upper_bound): Likewise.
* nlm32-alpha.c (nlm_alpha_mangle_relocs): Likewise.
(nlm_alpha_get_public_offset): Likewise.
|
|
|
|
* elf.c (_bfd_elf_link_hash_hide_symbol): Set dynindx to -1
only for ELF_LINK_FORCED_LOCAL.
* elf32-hppa.c (elf32_hppa_hide_symbol): Likewise.
* elf32-mips.c (_bfd_mips_elf_hide_symbol): Likewise.
* elfxx-ia64.c (elfNN_ia64_hash_hide_symbol): Likewise.
* elflink.h (elf_fix_symbol_flags): Set ELF_LINK_FORCED_LOCAL
if the symbol has hidden or internal visibility.
|
|
calls to undefined weak symbols.
|
|
R_X86_64_GOTPCREL, don't use assignments instead of comparisons.
|
|
out handled entries.
(elf64_x86_64_finish_dynamic_symbol): Set up GOT entries.
(elf64_x86_64_relocate_section): Fix GOTPCREL calculation.
(elf64_x86_64_relocate_section): Merge entries for GOTPCREL and
GOT32.
|
|
|
|
|
|
* elf32-i386.c (elf_i386_check_relocs): Verify if r_symndx is
valid.
|
|
2001-04-25 Frank Ch. Eigler <fche@redhat.com>
* bfd-in.h (bfd_cache_close): Declare newly exported function.
* bfd-in2.h: Regenerated.
|
|
|
|
(struct sec_merge_hash): Remove alignment_power.
(sec_merge_hash_newfunc): Clear alignment.
(sec_merge_hash_lookup): Pass alignment as argument.
Use hashp->root.next, not hashp->next to walk the hash chain.
If a string already in the hashtable does not have required
alignment, create a new hashtable entry.
(sec_merge_init): Remove alignment_power argument.
(sec_merge_add): Add alignment argument.
(sec_merge_emit): Alignment is now a per-entity thing, not per
section.
(_bfd_merge_section): Sanity check even non-SEC_STRINGS sections
for proper alignment.
Pass alignment information to sec_merge_add.
|
|
|
|
|
|
* x86-64.h: Add vtable support.
2001-04-23 Bo Thorsen <bo@suse.de>
* elf64-x86-64.c: Add c++ vtable hack.
Small whitespace and comment changes.
|
|
* elf64-x86-64.c (elf64_x86_64_plt0_entry): Fix instructions.
(elf64_x86_64_plt_entry): Likewise.
(elf64_x86_64_finish_dynamic_sections): Fix PLT0 generation.
(elf64_x86_64_finish_dynamic_symbol): Fix PLT generation.
|
|
(cris_elf_relocate_section): When not creating shared object, fill
in the .got table for any symbol not in the dynamic symbol table.
(elf_cris_finish_dynamic_symbol): When not creating shared object,
only emit a .got.rela reloc if the symbol is in the dynamic symbol
table.
(cris_elf_check_relocs): Use variable r_type in all places rather
than the original expression. Add default case in switch for
reloc types.
(elf_cris_size_dynamic_sections): Iterate over
elf_cris_discard_excess_program_dynamics when not creating shared
library.
(elf_cris_discard_excess_dso_dynamics): Renamed from
elf_cris_discard_copies. Correct typo, s/Rel/Rela/.
(elf_cris_discard_excess_program_dynamics): New.
|
|
bfd_coff_swap_filehdr_out instead of coff_swap_filehdr_out.
|
|
* bfd-in2.h: Regenerate.
|
|
|
|
* section.c (SEC_MERGE): Define new flag for merging.
(SEC_STRINGS): Likewise.
(entsize): New field.
|
|
flag on pe-i386 targets.
|
|
* 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.
|
|
only hide symbols marked STV_INTERNAL or STV_HIDDEN.
|
|
* config.bfd (mips*el*-*-linux-gnu*): Use traditional little
endian MIPS ELF target.
* config.bfd (mips*-*-linux-gnu*): Use traditional big endian
MIPS ELF target.
* configure.in (bfd_elf64_tradbigmips_vec): New. Traditional
64bit big endian MIPS ELF target.
(bfd_elf64_tradlittlemips_vec): New. Traditional 64bit little
endian MIPS ELF target.
* configure: Regenerated.
* elf32-mips.c (IRIX_COMPAT): Handle traditional 64bit and
little endian targets.
(mips_elf_sym_is_global): Handle traditional targets.
* elf64-mips.c (bfd_elf64_tradbigmips_vec): New. Traditional
64bit big endian MIPS ELF target.
(bfd_elf64_tradlittlemips_vec): New. Traditional 64bit little
endian MIPS ELF target.
* targets.c: (_bfd_target_vector): Add bfd_elf64_tradbigmips_vec
and bfd_elf64_tradlittlemips_vec.
|
|
* elf32-i386.c (elf_i386_fake_sections): Treat ".reloc" as an
ordinary "progbits" section.
|
|
when -Bsymbolic causes a symbol to no longer need a .plt entry.
|
|
* efi-app-ia32.c (ALIGN_SECTIONS_IN_FILE): Deleted.
|
|
* efi-app-ia32.c (PEI_TARGET_SUBSYSTEM): Rename from ...
(PEI_DEFAULT_TARGET_SUBSYSTEM): This.
|
|
|
|
* elf32-gen.c (elf32_generic_link_add_symbols): New. Check
if there are any relocations for generic ELF.
(bfd_elf32_bfd_link_add_symbols): Defined to
elf32_generic_link_add_symbols.
* elf64-gen.c (elf64_generic_link_add_symbols): New. Check
if there are any relocations for generic ELF.
(bfd_elf64_bfd_link_add_symbols): Defined to
elf64_generic_link_add_symbols.
|
|
|
|
|
|
BFD_RELOC_CRIS_JUMP_SLOT, BFD_RELOC_CRIS_RELATIVE,
BFD_RELOC_CRIS_32_GOT, BFD_RELOC_CRIS_16_GOT,
BFD_RELOC_CRIS_32_GOTPLT, BFD_RELOC_CRIS_16_GOTPLT,
BFD_RELOC_CRIS_32_GOTREL, BFD_RELOC_CRIS_32_PLT_GOTREL,
BFD_RELOC_CRIS_32_PLT_PCREL): New relocs.
* bfd-in2.h, libbfd.h: Regenerate.
|
|
(_bfd_mips_elf_relocate_section): Give a better error message when
a relocation is not recognized.
|
|
|
|
* configure.in: Remove the redundent AC_ARG_PROGRAM.
* configure: Rebuild.
|
|
relocation value when resolving a reference from a debugging
section.
|
|
|
|
|
|
|
|
the function happens to have a plabel.
|
|
R_SH_DIR8WP* relocs if they're against external symbols, else
they're just for relaxing. Validate the reloc values.
|
|
to be set when the input file type is binary.
|
|
* elf32-arm.h (elf32_arm_finish_dynamic_symbol): Don't make PLT
entries that could serve as a definition for a weak symbol.
|
|
|
|
|