This is the mail archive of the binutils-cvs@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[binutils-gdb] x86: Move GOT_TLS_* in elf32-i386.c to elfxx-x86.h


https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=6b9553e2a5d2ba0e43d0bdf382bbc6b5011032a1

commit 6b9553e2a5d2ba0e43d0bdf382bbc6b5011032a1
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Sat Sep 2 04:52:00 2017 -0700

    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.

Diff:
---
 bfd/ChangeLog      | 11 +++++++++++
 bfd/elf32-i386.c   | 15 ---------------
 bfd/elf64-x86-64.c | 12 ------------
 bfd/elfxx-x86.h    | 15 ++++++++++++++-
 4 files changed, 25 insertions(+), 28 deletions(-)

diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 5ef77cc..2bcee49 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -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
diff --git a/bfd/elf32-i386.c b/bfd/elf32-i386.c
index 0803bee..252a09d 100644
--- a/bfd/elf32-i386.c
+++ b/bfd/elf32-i386.c
@@ -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				\
diff --git a/bfd/elf64-x86-64.c b/bfd/elf64-x86-64.c
index 26ab715..300e99a 100644
--- a/bfd/elf64-x86-64.c
+++ b/bfd/elf64-x86-64.c
@@ -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				\
diff --git a/bfd/elfxx-x86.h b/bfd/elfxx-x86.h
index edaab45..86af21f 100644
--- a/bfd/elfxx-x86.h
+++ b/bfd/elfxx-x86.h
@@ -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))


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]