aboutsummaryrefslogtreecommitdiff
path: root/gold/symtab.cc
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2013-10-29 15:06:09 +1030
committerAlan Modra <amodra@gmail.com>2013-10-30 13:37:47 +1030
commitee67d69a3ff0eed25d98c5e97ed6c3ede8069edc (patch)
treefe01ce8627a4436bea7d77485a61c01462a6d557 /gold/symtab.cc
parent71a39c98f8bedad54818c62ab2d567b0e2de546b (diff)
downloadgdb-ee67d69a3ff0eed25d98c5e97ed6c3ede8069edc.zip
gdb-ee67d69a3ff0eed25d98c5e97ed6c3ede8069edc.tar.gz
gdb-ee67d69a3ff0eed25d98c5e97ed6c3ede8069edc.tar.bz2
Add .abiversion related support for ELFv2
Defines bits in ELF e_flags to differentiate ELFv2 objects from ELFv2, adds .abiversion directive to explicitly choose the ABI, and code to check and automatically select ABI. include/elf/ * ppc64.h (EF_PPC64_ABI): Define. bfd/ * elf64-ppc.c (abiversion, set_abiversion): New functions. (ppc64_elf_get_synthetic_symtab): Handle ELFv2 objects without .opd. (struct ppc_link_hash_table): Add opd_abi. (ppc64_elf_check_relocs): Check no .opd with ELFv2. (ppc64_elf_merge_private_bfd_data): New function. (ppc64_elf_print_private_bfd_data): New function. (ppc64_elf_tls_setup): Set htab->opd_abi. (ppc64_elf_size_dynamic_sections): Don't emit OPD related dynamic tags for ELFv2. (ppc_build_one_stub): Use R_PPC64_IRELATIVE for ELFv2 ifunc. (ppc64_elf_finish_dynamic_symbol): Likewise binutils/ * readelf.c (get_machine_flags): Display ABI version for EM_PPC64. gas/ * config/tc-ppc.c: Include elf/ppc64.h. (ppc_abiversion): New variable. (md_pseudo_table): Add .abiversion. (ppc_elf_abiversion, ppc_elf_end): New functions. * config/tc-ppc.h (md_end): Define.
Diffstat (limited to 'gold/symtab.cc')
0 files changed, 0 insertions, 0 deletions