[PATCH] i386: Remove NO_TLS_DIRECT_SEG_REFS handling
Florian Weimer
fweimer@redhat.com
Thu May 28 09:12:14 GMT 2020
This was needed for 32-bit PV Xen, which has been superseded by this
point according to Xen developers.
---
sysdeps/i386/Makefile | 4 ----
sysdeps/i386/i686/multiarch/strcmp-sse4.S | 20 --------------------
sysdeps/i386/i686/multiarch/strcmp-ssse3.S | 20 --------------------
3 files changed, 44 deletions(-)
diff --git a/sysdeps/i386/Makefile b/sysdeps/i386/Makefile
index c0a4fe15d4..b9b1367f60 100644
--- a/sysdeps/i386/Makefile
+++ b/sysdeps/i386/Makefile
@@ -33,10 +33,6 @@ else
stack-align-test-flags += -malign-double
endif
-ifneq (,$(filter -mno-tls-direct-seg-refs,$(CFLAGS)))
-defines += -DNO_TLS_DIRECT_SEG_REFS
-endif
-
ifeq ($(subdir),elf)
sysdep-dl-routines += tlsdesc dl-tlsdesc
diff --git a/sysdeps/i386/i686/multiarch/strcmp-sse4.S b/sysdeps/i386/i686/multiarch/strcmp-sse4.S
index 5454cba2e3..802609839a 100644
--- a/sysdeps/i386/i686/multiarch/strcmp-sse4.S
+++ b/sysdeps/i386/i686/multiarch/strcmp-sse4.S
@@ -101,19 +101,9 @@ ENTRY (__strcasecmp_sse4_2)
PUSH (%ebx)
LOAD_PIC_REG(bx)
movl __libc_tsd_LOCALE@GOTNTPOFF(%ebx), %eax
-# ifdef NO_TLS_DIRECT_SEG_REFS
- addl %gs:0, %eax
- movl (%eax), %eax
-# else
movl %gs:(%eax), %eax
-# endif
# else
-# ifdef NO_TLS_DIRECT_SEG_REFS
- movl %gs:0, %eax
- movl __libc_tsd_LOCALE@NTPOFF(%eax), %eax
-# else
movl %gs:__libc_tsd_LOCALE@NTPOFF, %eax
-# endif
# endif
# if LOCALE_T___LOCALES != 0 || LC_CTYPE != 0
movl LOCALE_T___LOCALES+LC_CTYPE*4(%eax), %eax
@@ -138,19 +128,9 @@ ENTRY (__strncasecmp_sse4_2)
PUSH (%ebx)
LOAD_PIC_REG(bx)
movl __libc_tsd_LOCALE@GOTNTPOFF(%ebx), %eax
-# ifdef NO_TLS_DIRECT_SEG_REFS
- addl %gs:0, %eax
- movl (%eax), %eax
-# else
movl %gs:(%eax), %eax
-# endif
# else
-# ifdef NO_TLS_DIRECT_SEG_REFS
- movl %gs:0, %eax
- movl __libc_tsd_LOCALE@NTPOFF(%eax), %eax
-# else
movl %gs:__libc_tsd_LOCALE@NTPOFF, %eax
-# endif
# endif
# if LOCALE_T___LOCALES != 0 || LC_CTYPE != 0
movl LOCALE_T___LOCALES+LC_CTYPE*4(%eax), %eax
diff --git a/sysdeps/i386/i686/multiarch/strcmp-ssse3.S b/sysdeps/i386/i686/multiarch/strcmp-ssse3.S
index 8e830dec6f..1b9d53c1fe 100644
--- a/sysdeps/i386/i686/multiarch/strcmp-ssse3.S
+++ b/sysdeps/i386/i686/multiarch/strcmp-ssse3.S
@@ -118,19 +118,9 @@ ENTRY (__strcasecmp_ssse3)
PUSH (%ebx)
LOAD_PIC_REG(bx)
movl __libc_tsd_LOCALE@GOTNTPOFF(%ebx), %eax
-# ifdef NO_TLS_DIRECT_SEG_REFS
- addl %gs:0, %eax
- movl (%eax), %eax
-# else
movl %gs:(%eax), %eax
-# endif
# else
-# ifdef NO_TLS_DIRECT_SEG_REFS
- movl %gs:0, %eax
- movl __libc_tsd_LOCALE@NTPOFF(%eax), %eax
-# else
movl %gs:__libc_tsd_LOCALE@NTPOFF, %eax
-# endif
# endif
# if LOCALE_T___LOCALES != 0 || LC_CTYPE != 0
movl LOCALE_T___LOCALES+LC_CTYPE*4(%eax), %eax
@@ -155,19 +145,9 @@ ENTRY (__strncasecmp_ssse3)
PUSH (%ebx)
LOAD_PIC_REG(bx)
movl __libc_tsd_LOCALE@GOTNTPOFF(%ebx), %eax
-# ifdef NO_TLS_DIRECT_SEG_REFS
- addl %gs:0, %eax
- movl (%eax), %eax
-# else
movl %gs:(%eax), %eax
-# endif
# else
-# ifdef NO_TLS_DIRECT_SEG_REFS
- movl %gs:0, %eax
- movl __libc_tsd_LOCALE@NTPOFF(%eax), %eax
-# else
movl %gs:__libc_tsd_LOCALE@NTPOFF, %eax
-# endif
# endif
# if LOCALE_T___LOCALES != 0 || LC_CTYPE != 0
movl LOCALE_T___LOCALES+LC_CTYPE*4(%eax), %eax
More information about the Libc-alpha
mailing list