08c3a6
commit aadd0a1c7c89d016e1186c81c0efcafa36bf84fc
08c3a6
Author: Noah Goldstein <goldstein.w.n@gmail.com>
08c3a6
Date:   Fri Jun 24 09:42:15 2022 -0700
08c3a6
08c3a6
    x86: Put wcs{n}len-sse4.1 in the sse4.1 text section
08c3a6
    
08c3a6
    Previously was missing but the two implementations shouldn't get in
08c3a6
    the sse2 (generic) text section.
08c3a6
    
08c3a6
    (cherry picked from commit afc6e4328ff80973bde50d5401691b4c4b2e522c)
08c3a6
08c3a6
diff --git a/sysdeps/x86_64/multiarch/strlen-vec.S b/sysdeps/x86_64/multiarch/strlen-vec.S
08c3a6
index 031753a91763b351..762f4755020c35f9 100644
08c3a6
--- a/sysdeps/x86_64/multiarch/strlen-vec.S
08c3a6
+++ b/sysdeps/x86_64/multiarch/strlen-vec.S
08c3a6
@@ -28,6 +28,10 @@
08c3a6
 # define SHIFT_RETURN
08c3a6
 #endif
08c3a6
 
08c3a6
+#ifndef SECTION
08c3a6
+# define SECTION(p)	p
08c3a6
+#endif
08c3a6
+
08c3a6
 /* Long lived register in strlen(s), strnlen(s, n) are:
08c3a6
 
08c3a6
 	%xmm3 - zero
08c3a6
@@ -37,7 +41,7 @@
08c3a6
 */
08c3a6
 
08c3a6
 
08c3a6
-.text
08c3a6
+	.section SECTION(.text),"ax",@progbits
08c3a6
 ENTRY(strlen)
08c3a6
 
08c3a6
 /* Test 64 bytes from %rax for zero. Save result as bitmask in %rdx.  */
08c3a6
diff --git a/sysdeps/x86_64/multiarch/wcslen-sse4_1.S b/sysdeps/x86_64/multiarch/wcslen-sse4_1.S
08c3a6
index 7e62621afc729492..e306a77f51e650d1 100644
08c3a6
--- a/sysdeps/x86_64/multiarch/wcslen-sse4_1.S
08c3a6
+++ b/sysdeps/x86_64/multiarch/wcslen-sse4_1.S
08c3a6
@@ -1,4 +1,5 @@
08c3a6
 #define AS_WCSLEN
08c3a6
 #define strlen	__wcslen_sse4_1
08c3a6
+#define SECTION(p)	p##.sse4.1
08c3a6
 
08c3a6
 #include "strlen-vec.S"
08c3a6
diff --git a/sysdeps/x86_64/multiarch/wcsnlen-sse4_1.S b/sysdeps/x86_64/multiarch/wcsnlen-sse4_1.S
08c3a6
index 5fa51fe07cbbdf5c..d2f7dd6e2254736c 100644
08c3a6
--- a/sysdeps/x86_64/multiarch/wcsnlen-sse4_1.S
08c3a6
+++ b/sysdeps/x86_64/multiarch/wcsnlen-sse4_1.S
08c3a6
@@ -1,5 +1,6 @@
08c3a6
 #define AS_WCSLEN
08c3a6
 #define AS_STRNLEN
08c3a6
 #define strlen	__wcsnlen_sse4_1
08c3a6
+#define SECTION(p)	p##.sse4.1
08c3a6
 
08c3a6
 #include "strlen-vec.S"