sys-libs/glibc: update patches

This commit is contained in:
lujianhua 2022-02-14 00:51:58 +08:00 committed by 梁永祥
parent 3631ce6bd5
commit c0b15e5bda
16 changed files with 658 additions and 29 deletions

View File

@ -1,16 +1,25 @@
From 60fe344e4c9cacf9c953725309faa7e7ef63a2fc Mon Sep 17 00:00:00 2001
From cc0b0cf4cceb29e1adddf9a171c9409010bee3c9 Mon Sep 17 00:00:00 2001
From: lujianhua <lujianhua000@gmail.com>
Date: Wed, 9 Feb 2022 14:20:22 +0800
Subject: [PATCH] x86: fix __arch_exchange_and_add_body
---
sysdeps/x86/atomic-machine.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
sysdeps/x86/atomic-machine.h | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/sysdeps/x86/atomic-machine.h b/sysdeps/x86/atomic-machine.h
index f24f1c7..89eb5b5 100644
index f24f1c7..c431f86 100644
--- a/sysdeps/x86/atomic-machine.h
+++ b/sysdeps/x86/atomic-machine.h
@@ -165,7 +165,7 @@
else if (__HAVE_64B_ATOMICS) \
__asm __volatile ("xchgq %q0, %1" \
: "=r" (result), "=m" (*mem) \
- : "0" ((int64_t) cast_to_integer (newvalue)), \
+ : "0" (cast_to_integer (newvalue)), \
"m" (*mem)); \
else \
{ \
@@ -196,7 +196,7 @@
else if (__HAVE_64B_ATOMICS) \
__asm __volatile (lock "xaddq %q0, %1" \

View File

@ -1,25 +0,0 @@
From 2589dc1ab56b4c0534e18e6b294f82a8a253ee4e Mon Sep 17 00:00:00 2001
From: lujianhua <lujianhua000@gmail.com>
Date: Sat, 4 Dec 2021 15:14:39 +0800
Subject: [PATCH 19/19] hardcode ld.lld as linker to build glibc
---
configure | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/configure b/configure
index 8d513a68ef..5c9471402d 100755
--- a/configure
+++ b/configure
@@ -4554,7 +4554,7 @@ case "$CC" in
*) LDNAME=ld;;
esac
AS=`$CC -print-prog-name=as`
-LD=`$CC -print-prog-name=$LDNAME`
+LD=`$CC -print-prog-name=ld.lld`
AR=`$CC -print-prog-name=ar`
OBJDUMP=`$CC -print-prog-name=objdump`
--
2.32.0

View File

@ -0,0 +1,37 @@
From 9a6813b95124a136a19cf6b6d95b05c000f6ce93 Mon Sep 17 00:00:00 2001
From: lujianhua <lujianhua000@gmail.com>
Date: Thu, 10 Feb 2022 01:16:06 +0800
Subject: [PATCH] i386: remove -Wa,-mtune=i686
---
sysdeps/i386/i686/Makefile | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/sysdeps/i386/i686/Makefile b/sysdeps/i386/i686/Makefile
index 3110427..94bdf56 100644
--- a/sysdeps/i386/i686/Makefile
+++ b/sysdeps/i386/i686/Makefile
@@ -1,12 +1,12 @@
# So that we can test __m128's alignment
stack-align-test-flags += -msse
-CFLAGS-.o += -Wa,-mtune=i686
-CFLAGS-.os += -Wa,-mtune=i686
-CFLAGS-.op += -Wa,-mtune=i686
-CFLAGS-.oS += -Wa,-mtune=i686
+#CFLAGS-.o += -Wa,-mtune=i686
+#CFLAGS-.os += -Wa,-mtune=i686
+#CFLAGS-.op += -Wa,-mtune=i686
+#CFLAGS-.oS += -Wa,-mtune=i686
-ASFLAGS-.o += -Wa,-mtune=i686
-ASFLAGS-.os += -Wa,-mtune=i686
-ASFLAGS-.op += -Wa,-mtune=i686
-ASFLAGS-.oS += -Wa,-mtune=i686
+#ASFLAGS-.o += -Wa,-mtune=i686
+#ASFLAGS-.os += -Wa,-mtune=i686
+#ASFLAGS-.op += -Wa,-mtune=i686
+#ASFLAGS-.oS += -Wa,-mtune=i686
--
2.34.1

View File

@ -0,0 +1,115 @@
From 263f3166c7a387219a2ace5b17e31227f9b4c93e Mon Sep 17 00:00:00 2001
From: lujianhua <lujianhua000@gmail.com>
Date: Thu, 10 Feb 2022 01:24:05 +0800
Subject: [PATCH] i386: replace movzx to movzbl
---
sysdeps/i386/i686/multiarch/strcmp-ssse3.S | 36 +++++++++++-----------
1 file changed, 18 insertions(+), 18 deletions(-)
diff --git a/sysdeps/i386/i686/multiarch/strcmp-ssse3.S b/sysdeps/i386/i686/multiarch/strcmp-ssse3.S
index ac5096f..3435691 100644
--- a/sysdeps/i386/i686/multiarch/strcmp-ssse3.S
+++ b/sysdeps/i386/i686/multiarch/strcmp-ssse3.S
@@ -2141,8 +2141,8 @@ L(less16bytes):
jbe L(eq)
#endif
- movzx 7(%eax), %ecx
- movzx 7(%edx), %eax
+ movzbl 7(%eax), %ecx
+ movzbl 7(%edx), %eax
#if defined USE_AS_STRCASECMP_L || defined USE_AS_STRNCASECMP_L
# ifdef PIC
movl _nl_C_LC_CTYPE_tolower@GOTOFF+128*4(%ebx,%ecx,4), %ecx
@@ -2161,8 +2161,8 @@ L(Byte0):
cmp $0, REM
jbe L(eq)
#endif
- movzx (%eax), %ecx
- movzx (%edx), %eax
+ movzbl (%eax), %ecx
+ movzbl (%edx), %eax
#if defined USE_AS_STRCASECMP_L || defined USE_AS_STRNCASECMP_L
# ifdef PIC
@@ -2182,8 +2182,8 @@ L(Byte1):
cmp $1, REM
jbe L(eq)
#endif
- movzx 1(%eax), %ecx
- movzx 1(%edx), %eax
+ movzbl 1(%eax), %ecx
+ movzbl 1(%edx), %eax
#if defined USE_AS_STRCASECMP_L || defined USE_AS_STRNCASECMP_L
# ifdef PIC
@@ -2203,8 +2203,8 @@ L(Byte2):
cmp $2, REM
jbe L(eq)
#endif
- movzx 2(%eax), %ecx
- movzx 2(%edx), %eax
+ movzbl 2(%eax), %ecx
+ movzbl 2(%edx), %eax
#if defined USE_AS_STRCASECMP_L || defined USE_AS_STRNCASECMP_L
# ifdef PIC
@@ -2224,8 +2224,8 @@ L(Byte3):
cmp $3, REM
jbe L(eq)
#endif
- movzx 3(%eax), %ecx
- movzx 3(%edx), %eax
+ movzbl 3(%eax), %ecx
+ movzbl 3(%edx), %eax
#if defined USE_AS_STRCASECMP_L || defined USE_AS_STRNCASECMP_L
# ifdef PIC
@@ -2245,8 +2245,8 @@ L(Byte4):
cmp $4, REM
jbe L(eq)
#endif
- movzx 4(%eax), %ecx
- movzx 4(%edx), %eax
+ movzbl 4(%eax), %ecx
+ movzbl 4(%edx), %eax
#if defined USE_AS_STRCASECMP_L || defined USE_AS_STRNCASECMP_L
# ifdef PIC
@@ -2266,8 +2266,8 @@ L(Byte5):
cmp $5, REM
jbe L(eq)
#endif
- movzx 5(%eax), %ecx
- movzx 5(%edx), %eax
+ movzbl 5(%eax), %ecx
+ movzbl 5(%edx), %eax
#if defined USE_AS_STRCASECMP_L || defined USE_AS_STRNCASECMP_L
# ifdef PIC
@@ -2287,8 +2287,8 @@ L(Byte6):
cmp $6, REM
jbe L(eq)
#endif
- movzx 6(%eax), %ecx
- movzx 6(%edx), %eax
+ movzbl 6(%eax), %ecx
+ movzbl 6(%edx), %eax
#if defined USE_AS_STRCASECMP_L || defined USE_AS_STRNCASECMP_L
# ifdef PIC
@@ -2337,8 +2337,8 @@ L(2next_8_bytes):
cmp $7, REM
jbe L(eq)
#endif
- movzx 7(%eax), %ecx
- movzx 7(%edx), %eax
+ movzbl 7(%eax), %ecx
+ movzbl 7(%edx), %eax
#if defined USE_AS_STRCASECMP_L || defined USE_AS_STRNCASECMP_L
# ifdef PIC
--
2.34.1

View File

@ -0,0 +1,46 @@
From c91f6b0d1fb1c4284b34fc35bf27cd3686ce1ca2 Mon Sep 17 00:00:00 2001
From: lujianhua <lujianhua000@gmail.com>
Date: Thu, 10 Feb 2022 10:54:15 +0800
Subject: [PATCH] i386/wsclen-sse2: replace cmp to cmpl
---
sysdeps/i386/i686/multiarch/wcslen-sse2.S | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/sysdeps/i386/i686/multiarch/wcslen-sse2.S b/sysdeps/i386/i686/multiarch/wcslen-sse2.S
index 5337286..d49a7ce 100644
--- a/sysdeps/i386/i686/multiarch/wcslen-sse2.S
+++ b/sysdeps/i386/i686/multiarch/wcslen-sse2.S
@@ -24,21 +24,21 @@
ENTRY (__wcslen_sse2)
mov STR(%esp), %edx
- cmp $0, (%edx)
+ cmpl $0, (%edx)
jz L(exit_tail0)
- cmp $0, 4(%edx)
+ cmpl $0, 4(%edx)
jz L(exit_tail1)
- cmp $0, 8(%edx)
+ cmpl $0, 8(%edx)
jz L(exit_tail2)
- cmp $0, 12(%edx)
+ cmpl $0, 12(%edx)
jz L(exit_tail3)
- cmp $0, 16(%edx)
+ cmpl $0, 16(%edx)
jz L(exit_tail4)
- cmp $0, 20(%edx)
+ cmpl $0, 20(%edx)
jz L(exit_tail5)
- cmp $0, 24(%edx)
+ cmpl $0, 24(%edx)
jz L(exit_tail6)
- cmp $0, 28(%edx)
+ cmpl $0, 28(%edx)
jz L(exit_tail7)
pxor %xmm0, %xmm0
--
2.34.1

View File

@ -0,0 +1,46 @@
From 00ab90576d78a1b7ad1d5922e1e62595491bc675 Mon Sep 17 00:00:00 2001
From: lujianhua <lujianhua000@gmail.com>
Date: Thu, 10 Feb 2022 11:00:59 +0800
Subject: [PATCH] i386/wsccpy-sse2: replace cmp to cmpl
---
sysdeps/i386/i686/multiarch/wcscpy-ssse3.S | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/sysdeps/i386/i686/multiarch/wcscpy-ssse3.S b/sysdeps/i386/i686/multiarch/wcscpy-ssse3.S
index 601e0f0..c2de882 100644
--- a/sysdeps/i386/i686/multiarch/wcscpy-ssse3.S
+++ b/sysdeps/i386/i686/multiarch/wcscpy-ssse3.S
@@ -41,13 +41,13 @@ ENTRY (__wcscpy_ssse3)
mov STR1(%esp), %edx
mov STR2(%esp), %ecx
- cmp $0, (%ecx)
+ cmpl $0, (%ecx)
jz L(ExitTail4)
- cmp $0, 4(%ecx)
+ cmpl $0, 4(%ecx)
jz L(ExitTail8)
- cmp $0, 8(%ecx)
+ cmpl $0, 8(%ecx)
jz L(ExitTail12)
- cmp $0, 12(%ecx)
+ cmpl $0, 12(%ecx)
jz L(ExitTail16)
PUSH (%edi)
@@ -79,9 +79,9 @@ ENTRY (__wcscpy_ssse3)
mov $0, %esi
jz L(Align16Both)
- cmp $4, %eax
+ cmpl $4, %eax
je L(Shl4)
- cmp $8, %eax
+ cmpl $8, %eax
je L(Shl8)
jmp L(Shl12)
--
2.34.1

View File

@ -0,0 +1,28 @@
From 7be23c0c20df0a83f06049f990bc19cd6bd7277e Mon Sep 17 00:00:00 2001
From: lujianhua <lujianhua000@gmail.com>
Date: Thu, 10 Feb 2022 11:16:33 +0800
Subject: [PATCH] i386/e_atanhl: assemble tfloat
---
sysdeps/i386/fpu/e_atanhl.S | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/sysdeps/i386/fpu/e_atanhl.S b/sysdeps/i386/fpu/e_atanhl.S
index 1f6eb7c..8f93dcf 100644
--- a/sysdeps/i386/fpu/e_atanhl.S
+++ b/sysdeps/i386/fpu/e_atanhl.S
@@ -39,7 +39,11 @@ limit: .double 0.29
ASM_SIZE_DIRECTIVE(limit)
.align ALIGNARG(4)
.type ln2_2,@object
+#ifdef __clang__
+ln2_2: .byte 0xac, 0x79, 0xcf, 0xd1, 0xf7, 0x17, 0x72, 0xb1, 0xfd, 0x3f
+#else
ln2_2: .tfloat 0.3465735902799726547086160
+#endif
ASM_SIZE_DIRECTIVE(ln2_2)
#ifdef PIC
--
2.34.1

View File

@ -0,0 +1,34 @@
From 7deb20f8ad3b0af94234ef1c8f8d39526100f436 Mon Sep 17 00:00:00 2001
From: lujianhua <lujianhua000@gmail.com>
Date: Thu, 10 Feb 2022 11:43:17 +0800
Subject: [PATCH] i386/e_logl: replace fld to flds
---
sysdeps/i386/i686/fpu/e_logl.S | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/sysdeps/i386/i686/fpu/e_logl.S b/sysdeps/i386/i686/fpu/e_logl.S
index 63183ac..db2112a 100644
--- a/sysdeps/i386/i686/fpu/e_logl.S
+++ b/sysdeps/i386/i686/fpu/e_logl.S
@@ -43,7 +43,7 @@ ENTRY(__ieee754_logl)
fsubl MO(one) // x-1 : x : log(2)
5: fld %st // x-1 : x-1 : x : log(2)
fabs // |x-1| : x-1 : x : log(2)
- fld MO(limit) // 0.29 : |x-1| : x-1 : x : log(2)
+ flds MO(limit) // 0.29 : |x-1| : x-1 : x : log(2)
fcomip %st(1) // |x-1| : x-1 : x : log(2)
fstp %st(0) // x-1 : x : log(2)
jc 2f
@@ -76,7 +76,7 @@ ENTRY(__logl_finite)
fsubl MO(one) // x-1 : x : log(2)
fld %st // x-1 : x-1 : x : log(2)
fabs // |x-1| : x-1 : x : log(2)
- fld MO(limit) // 0.29 : |x-1| : x-1 : x : log(2)
+ flds MO(limit) // 0.29 : |x-1| : x-1 : x : log(2)
fcomip %st(1) // |x-1| : x-1 : x : log(2)
fstp %st(0) // x-1 : x : log(2)
jc 2b
--
2.34.1

View File

@ -0,0 +1,28 @@
From 244458e9754f62ba1ebca12d54655578294ed03a Mon Sep 17 00:00:00 2001
From: lujianhua <lujianhua000@gmail.com>
Date: Thu, 10 Feb 2022 14:38:49 +0800
Subject: [PATCH] i386/e_atanh: asseble tfloat
---
sysdeps/i386/fpu/e_atanh.S | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/sysdeps/i386/fpu/e_atanh.S b/sysdeps/i386/fpu/e_atanh.S
index 6e4fef0..dcb9cbf 100644
--- a/sysdeps/i386/fpu/e_atanh.S
+++ b/sysdeps/i386/fpu/e_atanh.S
@@ -33,7 +33,11 @@ one: .double 1.0
limit: .double 0.29
ASM_SIZE_DIRECTIVE(limit)
.type ln2_2,@object
+#ifdef __clang__
+ln2_2: .byte 0xac, 0x79, 0xcf, 0xd1, 0xf7, 0x17, 0x72, 0xb1, 0xfd, 0x3f
+#else
ln2_2: .tfloat 0.3465735902799726547086160
+#endif
ASM_SIZE_DIRECTIVE(ln2_2)
DEFINE_DBL_MIN
--
2.34.1

View File

@ -0,0 +1,28 @@
From da2122c834728104b7fd6c4dac6417350694a0c5 Mon Sep 17 00:00:00 2001
From: lujianhua <lujianhua000@gmail.com>
Date: Thu, 10 Feb 2022 15:01:47 +0800
Subject: [PATCH] i386/e_atanhf: asseble tfloat
---
sysdeps/i386/fpu/e_atanhf.S | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/sysdeps/i386/fpu/e_atanhf.S b/sysdeps/i386/fpu/e_atanhf.S
index 146196e..789f838 100644
--- a/sysdeps/i386/fpu/e_atanhf.S
+++ b/sysdeps/i386/fpu/e_atanhf.S
@@ -34,7 +34,11 @@ limit: .double 0.29
ASM_SIZE_DIRECTIVE(limit)
.align ALIGNARG(4)
.type ln2_2,@object
+#ifdef __clang__
+ln2_2: .byte 0xac, 0x79, 0xcf, 0xd1, 0xf7, 0x17, 0x72, 0xb1, 0xfd, 0x3f
+#else
ln2_2: .tfloat 0.3465735902799726547086160
+#endif
ASM_SIZE_DIRECTIVE(ln2_2)
DEFINE_FLT_MIN
--
2.34.1

View File

@ -0,0 +1,28 @@
From c6f1b2f86f14a3d9f3aa91878089e27547764715 Mon Sep 17 00:00:00 2001
From: lujianhua <lujianhua000@gmail.com>
Date: Thu, 10 Feb 2022 12:03:18 +0800
Subject: [PATCH] i386/s_asinhl: asseble tfloat
---
sysdeps/i386/fpu/s_asinhl.S | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/sysdeps/i386/fpu/s_asinhl.S b/sysdeps/i386/fpu/s_asinhl.S
index bd442c6..9fd2170 100644
--- a/sysdeps/i386/fpu/s_asinhl.S
+++ b/sysdeps/i386/fpu/s_asinhl.S
@@ -23,7 +23,11 @@
.align ALIGNARG(4)
.type huge,@object
+#ifdef __clang__
+huge: .byte 0x1d, 0xfa, 0x6f, 0x45, 0xe7, 0x34, 0xb6, 0x89, 0xf8, 0x7f
+#else
huge: .tfloat 1e+4930
+#endif
ASM_SIZE_DIRECTIVE(huge)
.align ALIGNARG(4)
/* Please note that we use double value for 1.0. This number
--
2.34.1

View File

@ -0,0 +1,120 @@
From 3b318404023ea7042f3ba007312cbc7606d6c8ab Mon Sep 17 00:00:00 2001
From: lujianhua <lujianhua000@gmail.com>
Date: Thu, 10 Feb 2022 14:25:24 +0800
Subject: [PATCH] i386/s_cbrtl: asseble tfloat
---
sysdeps/i386/fpu/s_cbrtl.S | 52 ++++++++++++++++++++++++++++++++++++++
1 file changed, 52 insertions(+)
diff --git a/sysdeps/i386/fpu/s_cbrtl.S b/sysdeps/i386/fpu/s_cbrtl.S
index 8802164..e02f0a2 100644
--- a/sysdeps/i386/fpu/s_cbrtl.S
+++ b/sysdeps/i386/fpu/s_cbrtl.S
@@ -23,35 +23,67 @@
.align ALIGNARG(4)
.type f8,@object
+#ifdef __clang__
+f8: .byte 0x39, 0x28, 0x54, 0x3a, 0xd8, 0xf3, 0x7e, 0xa5, 0xfc, 0x3f
+#else
f8: .tfloat 0.161617097923756032
+#endif
ASM_SIZE_DIRECTIVE(f8)
.align ALIGNARG(4)
.type f7,@object
+#ifdef __clang__
+f7: .byte 0x14, 0x90, 0x02, 0x20, 0x78, 0xda, 0x11, 0xfd, 0xfe, 0xbf, 0xad, 0xb4, 0xe3, 0xad
+#else
f7: .tfloat -0.988553671195413709
+#endif
ASM_SIZE_DIRECTIVE(f7)
.align ALIGNARG(4)
.type f6,@object
+#ifdef __clang__
+f6: .byte 0xad, 0xb4, 0xe3, 0xad, 0xfc, 0x93, 0xca, 0xa9, 0x00, 0x40, 0x34, 0x1c
+#else
f6: .tfloat 2.65298938441952296
+#endif
ASM_SIZE_DIRECTIVE(f6)
.align ALIGNARG(4)
.type f5,@object
+#ifdef __clang__
+f5: .byte 0x34, 0x1c, 0x93, 0x2c, 0x56, 0x86, 0x91, 0x83, 0x01, 0xc0, 0x94
+#else
f5: .tfloat -4.11151425200350531
+#endif
ASM_SIZE_DIRECTIVE(f5)
.align ALIGNARG(4)
.type f4,@object
+#ifdef __clang__
+f4: .byte 0x94, 0x45, 0x30, 0xee, 0xc9, 0x25, 0x0f, 0x83, 0x01, 0x40
+#else
f4: .tfloat 4.09559907378707839
+#endif
ASM_SIZE_DIRECTIVE(f4)
.align ALIGNARG(4)
.type f3,@object
+#ifdef __clang__
+f3: .byte 0xc6, 0xf0, 0xa2, 0x5f, 0x1d, 0xdd, 0xbe, 0xb4, 0x00, 0xc0, 0xe3
+#else
f3: .tfloat -2.82414939754975962
+#endif
ASM_SIZE_DIRECTIVE(f3)
.align ALIGNARG(4)
.type f2,@object
+#ifdef __clang__
+f2: .byte 0xe3, 0x86, 0x85, 0xb0, 0x63, 0xa1, 0x85, 0xd6, 0xff, 0x3f
+#else
f2: .tfloat 1.67595307700780102
+#endif
ASM_SIZE_DIRECTIVE(f2)
.align ALIGNARG(4)
.type f1,@object
+#ifdef __clang__
+f1: .byte 0x45, 0x3b, 0xec, 0xd4, 0x3e, 0x07, 0x16, 0xad, 0xfd, 0x3f
+#else
f1: .tfloat 0.338058687610520237
+#endif
ASM_SIZE_DIRECTIVE(f1)
#define CBRT2 1.2599210498948731648
@@ -63,15 +95,35 @@ f1: .tfloat 0.338058687610520237
wide to avoid having to implement a multiplication by 10. */
.type factor,@object
.align ALIGNARG(4)
+#ifdef __clang__
+factor: .byte 0x11, 0x57, 0x94, 0x6b, 0xcc, 0x17, 0x45, 0xa1, 0xfe, 0x3f, 0x15, 0xe4
+#else
factor: .tfloat ONE_SQR_CBRT2
+#endif
.byte 0, 0, 0, 0, 0, 0
+#ifdef __clang__
+ .byte 0x15, 0xe4, 0x71, 0xeb, 0x29, 0xf5, 0x2f, 0xcb, 0xfe, 0x3f
+#else
.tfloat ONE_CBRT2
+#endif
.byte 0, 0, 0, 0, 0, 0
+#ifdef __clang__
+ .byte 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xff, 0x3f, 0x11, 0x57
+#else
.tfloat 1.0
+#endif
.byte 0, 0, 0, 0, 0, 0
+#ifdef __clang__
+ .byte 0x11, 0x57, 0x94, 0x6b, 0xcc, 0x17, 0x45, 0xa1, 0xff, 0x3f, 0x16, 0xe4
+#else
.tfloat CBRT2
+#endif
.byte 0, 0, 0, 0, 0, 0
+#ifdef __clang__
+ .byte 0x16, 0xe4, 0x71, 0xeb, 0x29, 0xf5, 0x2f, 0xcb, 0xff, 0x3f
+#else
.tfloat SQR_CBRT2
+#endif
ASM_SIZE_DIRECTIVE(factor)
.type two64,@object
--
2.34.1

View File

@ -0,0 +1,28 @@
From 5530757f65d5721f53088bb6eb6a51356628349a Mon Sep 17 00:00:00 2001
From: lujianhua <lujianhua000@gmail.com>
Date: Thu, 10 Feb 2022 14:46:25 +0800
Subject: [PATCH] i386/s_expm1: asseble tfloat
---
sysdeps/i386/fpu/s_expm1.S | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/sysdeps/i386/fpu/s_expm1.S b/sysdeps/i386/fpu/s_expm1.S
index 7199d68..94ecd7c 100644
--- a/sysdeps/i386/fpu/s_expm1.S
+++ b/sysdeps/i386/fpu/s_expm1.S
@@ -33,7 +33,11 @@ minus1: .double -1.0
one: .double 1.0
ASM_SIZE_DIRECTIVE(one)
.type l2e,@object
+#ifdef __clang__
+l2e: .byte 0xbc, 0xf0, 0x17, 0x5c, 0x29, 0x3b, 0xaa, 0xb8, 0xff, 0x3f
+#else
l2e: .tfloat 1.442695040888963407359924681002
+#endif
ASM_SIZE_DIRECTIVE(l2e)
DEFINE_DBL_MIN
--
2.34.1

View File

@ -0,0 +1,28 @@
From d8f5ae6adde4ba610f0c6a6ee583b76d84d152fb Mon Sep 17 00:00:00 2001
From: lujianhua <lujianhua000@gmail.com>
Date: Thu, 10 Feb 2022 15:08:26 +0800
Subject: [PATCH] i386/s_expm1f: asseble tfloat
---
sysdeps/i386/fpu/s_expm1f.S | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/sysdeps/i386/fpu/s_expm1f.S b/sysdeps/i386/fpu/s_expm1f.S
index 04c37bd..358ed1b 100644
--- a/sysdeps/i386/fpu/s_expm1f.S
+++ b/sysdeps/i386/fpu/s_expm1f.S
@@ -33,7 +33,11 @@ minus1: .double -1.0
one: .double 1.0
ASM_SIZE_DIRECTIVE(one)
.type l2e,@object
+#ifdef __clang__
+l2e: .byte 0xbc, 0xf0, 0x17, 0x5c, 0x29, 0x3b, 0xaa, 0xb8, 0xff, 0x3f
+#else
l2e: .tfloat 1.442695040888963407359924681002
+#endif
ASM_SIZE_DIRECTIVE(l2e)
DEFINE_FLT_MIN
--
2.34.1

View File

@ -0,0 +1,28 @@
From 7b2aedc27576acbbce56d4107833b5c156856656 Mon Sep 17 00:00:00 2001
From: lujianhua <lujianhua000@gmail.com>
Date: Thu, 10 Feb 2022 14:31:27 +0800
Subject: [PATCH] i386/s_log1pl: asseble tfloat
---
sysdeps/i386/fpu/s_log1pl.S | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/sysdeps/i386/fpu/s_log1pl.S b/sysdeps/i386/fpu/s_log1pl.S
index f28349f..8414cb7 100644
--- a/sysdeps/i386/fpu/s_log1pl.S
+++ b/sysdeps/i386/fpu/s_log1pl.S
@@ -14,7 +14,11 @@ RCSID("$NetBSD: s_log1p.S,v 1.7 1995/05/09 00:10:58 jtc Exp $")
-1 + sqrt(2) / 2 <= x <= 1 - sqrt(2) / 2
0.29 is a safe value.
*/
+#ifdef __clang__
+limit: .byte 0xe1, 0x7a, 0x14, 0xae, 0x47, 0xe1, 0x7a, 0x94, 0xfd, 0x3f
+#else
limit: .tfloat 0.29
+#endif
/* Please note: we use a double value here. Since 1.0 has
an exact representation this does not effect the accuracy
but it helps to optimize the code. */
--
2.34.1

View File

@ -0,0 +1,51 @@
From ec4e5e2cd4bab4f1f85bbb6d2108a2fab35a5df6 Mon Sep 17 00:00:00 2001
From: lujianhua <lujianhua000@gmail.com>
Date: Thu, 10 Feb 2022 18:14:10 +0800
Subject: [PATCH] remove binutils dependencies
---
configure | 12 +++++++-----
1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/configure b/configure
index 85fddae0..4a5eb715 100755
--- a/configure
+++ b/configure
@@ -4591,9 +4591,9 @@ case "$CC" in
*fuse-ld=lld*) LDNAME=ld.lld;;
*) LDNAME=ld;;
esac
-AS=`$CC -print-prog-name=as`
+AS=$CC
LD=`$CC -print-prog-name=$LDNAME`
AR=`$CC -print-prog-name=ar`
OBJDUMP=`$CC -print-prog-name=objdump`
@@ -4610,7 +4610,7 @@ if ${libc_cv_prog_as_gnu+:} false; then :
else
# Most GNU programs take a -v and spit out some text including
# the word 'GNU'. Some try to read stdin, so give them /dev/null.
-if $AS -o conftest -v </dev/null 2>&1 | grep GNU > /dev/null 2>&1; then
+if $AS -o conftest -v </dev/null 2>&1 | grep gnu > /dev/null 2>&1; then
libc_cv_prog_as_gnu=yes
else
libc_cv_prog_as_gnu=no
@@ -4690,10 +4690,12 @@ else
# Found it, now check the version.
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking version of $AS" >&5
$as_echo_n "checking version of $AS... " >&6; }
- ac_prog_version=`$AS --version 2>&1 | sed -n 's/^.*GNU assembler.* \([0-9]*\.[0-9.]*\).*$/\1/p'`
+ #ac_prog_version=`$AS --version 2>&1 | sed -n 's/^.*GNU assembler.* \([0-9]*\.[0-9.]*\).*$/\1/p'`
+ ac_prog_version=`$AS --version 2>&1 | sed -n 's/^.*clang version.* \([0-9]*\.[0-9].[0-9]\)/\1/p'`
case $ac_prog_version in
'') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;;
- 2.1[0-9][0-9]*|2.2[5-9]*|2.[3-9][0-9]*|[3-9].*|[1-9][0-9]*)
+ #2.1[0-9][0-9]*|2.2[5-9]*|2.[3-9][0-9]*|[3-9].*|[1-9][0-9]*)
+ [1-9][0-9].[0-9].[0-9])
ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;;
*) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;;
--
2.34.1