x86: Add is_solaris to elf_x86_target_os
authorH.J. Lu <hjl.tools@gmail.com>
Fri, 9 Feb 2018 16:44:42 +0000 (08:44 -0800)
committerH.J. Lu <hjl.tools@gmail.com>
Fri, 9 Feb 2018 16:45:07 +0000 (08:45 -0800)
commit3b4c384407ebbdd9ed4ad5057080b3be038b8748
tree8261b4f0b75305fe1aab3912ff5fb61dfd8195cc
parent9c3630e983df43e68006b526a92c2a9a2b64dfd9
x86: Add is_solaris to elf_x86_target_os

Add is_solaris to elf_x86_target_os since Solaris is quite different.

* elf32-i386.c (elf_i386_get_synthetic_symtab): Also handle
is_solaris.
(i386_elf32_sol2_vec): Don't declare.
(elf_i386_link_setup_gnu_properties): Also handle is_solaris.
Don't set need_global_offset_table.
(elf_i386_solaris_arch_bed): New.
(elf_backend_arch_data): Set to elf_i386_solaris_arch_bed for
Solaris.
* elf64-x86-64.c (elf_x86_64_get_synthetic_symtab): Check
target_os != is_nacl instead of target_os == is_normal.
(x86_64_elf64_sol2_vec): Don't declare.
(elf_x86_64_link_setup_gnu_properties): Check target_os !=
is_nacl instead of target_os == is_normal.  Don't set
need_global_offset_table.
(elf_x86_64_solaris_arch_bed): New.
(elf_backend_arch_data): Set to elf_x86_64_solaris_arch_bed for
Solaris.
* elfxx-x86.c (_bfd_x86_elf_size_dynamic_sections): Keep
_GLOBAL_OFFSET_TABLE_ for Solaris.
(_bfd_x86_elf_link_setup_gnu_properties): Don't copy
need_global_offset_table.
* elfxx-x86.h (elf_x86_target_os): Add is_solaris.
(elf_x86_link_hash_table): Remove need_global_offset_table.
(elf_x86_init_table): Likewise.
bfd/ChangeLog
bfd/elf32-i386.c
bfd/elf64-x86-64.c
bfd/elfxx-x86.c
bfd/elfxx-x86.h