[PATCH v2] x86: Put wcs{n}len-sse4.1 in the sse4.1 text section
Sunil Pandey
skpgkp2@gmail.com
Thu Jul 14 03:02:04 GMT 2022
On Fri, Jun 24, 2022 at 10:08 AM H.J. Lu via Libc-alpha
<libc-alpha@sourceware.org> wrote:
>
> On Fri, Jun 24, 2022 at 9:42 AM Noah Goldstein <goldstein.w.n@gmail.com> wrote:
> >
> > Previously was missing but the two implementations shouldn't get in
> > the sse2 (generic) text section.
> > ---
> > sysdeps/x86_64/multiarch/strlen-vec.S | 6 +++++-
> > sysdeps/x86_64/multiarch/wcslen-sse4_1.S | 1 +
> > sysdeps/x86_64/multiarch/wcsnlen-sse4_1.S | 1 +
> > 3 files changed, 7 insertions(+), 1 deletion(-)
> >
> > diff --git a/sysdeps/x86_64/multiarch/strlen-vec.S b/sysdeps/x86_64/multiarch/strlen-vec.S
> > index 42b6124dfd..874123d604 100644
> > --- a/sysdeps/x86_64/multiarch/strlen-vec.S
> > +++ b/sysdeps/x86_64/multiarch/strlen-vec.S
> > @@ -28,6 +28,10 @@
> > # define SHIFT_RETURN
> > #endif
> >
> > +#ifndef SECTION
> > +# define SECTION(p) p
> > +#endif
> > +
> > /* Long lived register in strlen(s), strnlen(s, n) are:
> >
> > %xmm3 - zero
> > @@ -37,7 +41,7 @@
> > */
> >
> >
> > -.text
> > + .section SECTION(.text),"ax",@progbits
> > ENTRY(strlen)
> >
> > /* Test 64 bytes from %rax for zero. Save result as bitmask in %rdx. */
> > diff --git a/sysdeps/x86_64/multiarch/wcslen-sse4_1.S b/sysdeps/x86_64/multiarch/wcslen-sse4_1.S
> > index 7e62621afc..e306a77f51 100644
> > --- a/sysdeps/x86_64/multiarch/wcslen-sse4_1.S
> > +++ b/sysdeps/x86_64/multiarch/wcslen-sse4_1.S
> > @@ -1,4 +1,5 @@
> > #define AS_WCSLEN
> > #define strlen __wcslen_sse4_1
> > +#define SECTION(p) p##.sse4.1
> >
> > #include "strlen-vec.S"
> > diff --git a/sysdeps/x86_64/multiarch/wcsnlen-sse4_1.S b/sysdeps/x86_64/multiarch/wcsnlen-sse4_1.S
> > index 5fa51fe07c..d2f7dd6e22 100644
> > --- a/sysdeps/x86_64/multiarch/wcsnlen-sse4_1.S
> > +++ b/sysdeps/x86_64/multiarch/wcsnlen-sse4_1.S
> > @@ -1,5 +1,6 @@
> > #define AS_WCSLEN
> > #define AS_STRNLEN
> > #define strlen __wcsnlen_sse4_1
> > +#define SECTION(p) p##.sse4.1
> >
> > #include "strlen-vec.S"
> > --
> > 2.34.1
> >
>
> LGTM.
>
> Thanks.
>
> --
> H.J.
I would like to backport this patch to release branches.
Any comments or objections?
--Sunil
More information about the Libc-alpha
mailing list