x86: Move GOT_TLS_* in elf32-i386.c to elfxx-x86.h
elf64-x86-64.c can use GOT_TLS_* definitions in elf32-i386.c with GOT_TLS_IE_POS, GOT_TLS_IE_NEG and GOT_TLS_IE_BOTH unused. * elf32-i386.c (GOT_TLS_IE, GOT_TLS_IE_POS, GOT_TLS_IE_NEG, GOT_TLS_IE_BOTH, GOT_TLS_GDESC, GOT_TLS_GD_BOTH_P, GOT_TLS_GD_P, GOT_TLS_GDESC_P, GOT_TLS_GD_ANY_P): Moved to ... * elfxx-x86.h (GOT_TLS_IE, GOT_TLS_IE_POS, GOT_TLS_IE_NEG, GOT_TLS_IE_BOTH, GOT_TLS_GDESC, GOT_TLS_GD_BOTH_P, GOT_TLS_GD_P, GOT_TLS_GDESC_P, GOT_TLS_GD_ANY_P): Here. * elf64-x86-64.c (GOT_TLS_IE, GOT_TLS_GDESC, GOT_TLS_GD_BOTH_P, GOT_TLS_GD_P, GOT_TLS_GDESC_P, GOT_TLS_GD_ANY_P): Removed.
This commit is contained in:
parent
1fa4ec6ae7
commit
6b9553e2a5
|
@ -1,3 +1,14 @@
|
|||
2017-09-02 H.J. Lu <hongjiu.lu@intel.com>
|
||||
|
||||
* elf32-i386.c (GOT_TLS_IE, GOT_TLS_IE_POS, GOT_TLS_IE_NEG,
|
||||
GOT_TLS_IE_BOTH, GOT_TLS_GDESC, GOT_TLS_GD_BOTH_P,
|
||||
GOT_TLS_GD_P, GOT_TLS_GDESC_P, GOT_TLS_GD_ANY_P): Moved to ...
|
||||
* elfxx-x86.h (GOT_TLS_IE, GOT_TLS_IE_POS, GOT_TLS_IE_NEG,
|
||||
GOT_TLS_IE_BOTH, GOT_TLS_GDESC, GOT_TLS_GD_BOTH_P,
|
||||
GOT_TLS_GD_P, GOT_TLS_GDESC_P, GOT_TLS_GD_ANY_P): Here.
|
||||
* elf64-x86-64.c (GOT_TLS_IE, GOT_TLS_GDESC, GOT_TLS_GD_BOTH_P,
|
||||
GOT_TLS_GD_P, GOT_TLS_GDESC_P, GOT_TLS_GD_ANY_P): Removed.
|
||||
|
||||
2017-09-01 H.J. Lu <hongjiu.lu@intel.com>
|
||||
|
||||
PR ld/22064
|
||||
|
|
|
@ -853,21 +853,6 @@ static const struct elf_i386_backend_data elf_i386_arch_bed =
|
|||
|
||||
#define elf_backend_arch_data &elf_i386_arch_bed
|
||||
|
||||
/* Values in tls_type of x86 ELF linker hash entry. */
|
||||
#define GOT_TLS_IE 4
|
||||
#define GOT_TLS_IE_POS 5
|
||||
#define GOT_TLS_IE_NEG 6
|
||||
#define GOT_TLS_IE_BOTH 7
|
||||
#define GOT_TLS_GDESC 8
|
||||
#define GOT_TLS_GD_BOTH_P(type) \
|
||||
((type) == (GOT_TLS_GD | GOT_TLS_GDESC))
|
||||
#define GOT_TLS_GD_P(type) \
|
||||
((type) == GOT_TLS_GD || GOT_TLS_GD_BOTH_P (type))
|
||||
#define GOT_TLS_GDESC_P(type) \
|
||||
((type) == GOT_TLS_GDESC || GOT_TLS_GD_BOTH_P (type))
|
||||
#define GOT_TLS_GD_ANY_P(type) \
|
||||
(GOT_TLS_GD_P (type) || GOT_TLS_GDESC_P (type))
|
||||
|
||||
#define is_i386_elf(bfd) \
|
||||
(bfd_get_flavour (bfd) == bfd_target_elf_flavour \
|
||||
&& elf_tdata (bfd) != NULL \
|
||||
|
|
|
@ -968,18 +968,6 @@ static const struct elf_x86_64_backend_data elf_x86_64_arch_bed =
|
|||
|
||||
#define elf_backend_arch_data &elf_x86_64_arch_bed
|
||||
|
||||
/* Values in tls_type of x86 ELF linker hash entry. */
|
||||
#define GOT_TLS_IE 3
|
||||
#define GOT_TLS_GDESC 4
|
||||
#define GOT_TLS_GD_BOTH_P(type) \
|
||||
((type) == (GOT_TLS_GD | GOT_TLS_GDESC))
|
||||
#define GOT_TLS_GD_P(type) \
|
||||
((type) == GOT_TLS_GD || GOT_TLS_GD_BOTH_P (type))
|
||||
#define GOT_TLS_GDESC_P(type) \
|
||||
((type) == GOT_TLS_GDESC || GOT_TLS_GD_BOTH_P (type))
|
||||
#define GOT_TLS_GD_ANY_P(type) \
|
||||
(GOT_TLS_GD_P (type) || GOT_TLS_GDESC_P (type))
|
||||
|
||||
#define is_x86_64_elf(bfd) \
|
||||
(bfd_get_flavour (bfd) == bfd_target_elf_flavour \
|
||||
&& elf_tdata (bfd) != NULL \
|
||||
|
|
|
@ -218,10 +218,23 @@ struct elf_x86_plt_layout
|
|||
unsigned int eh_frame_plt_size;
|
||||
};
|
||||
|
||||
/* The first 3 values in tls_type of x86 ELF linker hash entry. */
|
||||
/* Values in tls_type of x86 ELF linker hash entry. */
|
||||
#define GOT_UNKNOWN 0
|
||||
#define GOT_NORMAL 1
|
||||
#define GOT_TLS_GD 2
|
||||
#define GOT_TLS_IE 4
|
||||
#define GOT_TLS_IE_POS 5
|
||||
#define GOT_TLS_IE_NEG 6
|
||||
#define GOT_TLS_IE_BOTH 7
|
||||
#define GOT_TLS_GDESC 8
|
||||
#define GOT_TLS_GD_BOTH_P(type) \
|
||||
((type) == (GOT_TLS_GD | GOT_TLS_GDESC))
|
||||
#define GOT_TLS_GD_P(type) \
|
||||
((type) == GOT_TLS_GD || GOT_TLS_GD_BOTH_P (type))
|
||||
#define GOT_TLS_GDESC_P(type) \
|
||||
((type) == GOT_TLS_GDESC || GOT_TLS_GD_BOTH_P (type))
|
||||
#define GOT_TLS_GD_ANY_P(type) \
|
||||
(GOT_TLS_GD_P (type) || GOT_TLS_GDESC_P (type))
|
||||
|
||||
#define elf_x86_hash_entry(ent) \
|
||||
((struct elf_x86_link_hash_entry *)(ent))
|
||||
|
|
Loading…
Reference in New Issue