diff options
author | Florian Weimer <fweimer@redhat.com> | 2017-06-14 08:11:22 +0200 |
---|---|---|
committer | Florian Weimer <fweimer@redhat.com> | 2017-06-14 14:50:11 +0200 |
commit | 69052a3a95da37169a08f9e59b2cc1808312753c (patch) | |
tree | e68a83580347c03df6347306740337965d90d551 | |
parent | fd860eaaa8757b221d9169e460c9ec41ea51f317 (diff) | |
download | glibc-69052a3a95da37169a08f9e59b2cc1808312753c.tar.gz glibc-69052a3a95da37169a08f9e59b2cc1808312753c.tar.xz glibc-69052a3a95da37169a08f9e59b2cc1808312753c.zip |
i686: Add missing IS_IN (libc) guards to vectorized strcspn
Since commit d957c4d3fa48d685ff2726c605c988127ef99395 (i386: Compile rtld-*.os with -mno-sse -mno-mmx -mfpmath=387), vector intrinsics can no longer be used in ld.so, even if the compiled code never makes it into the final ld.so link. This commit adds the missing IS_IN (libc) guard to the SSE 4.2 strcspn implementation, so that it can be used from ld.so in the future.
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | sysdeps/i386/i686/multiarch/strcspn-c.c | 6 | ||||
-rw-r--r-- | sysdeps/i386/i686/multiarch/varshift.c | 4 |
3 files changed, 12 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog index 0d63b39b2e..6d96dbd0e6 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2017-06-14 Florian Weimer <fweimer@redhat.com> + + * sysdeps/i386/i686/multiarch/strcspn-c.c: Add IS_IN (libc) guard. + * sysdeps/i386/i686/multiarch/varshift.c: Likewise. + 2017-06-14 Zack Weinberg <zackw@panix.com> * stdlib/errno.h: Remove __need_Emath and __need_error_t logic. diff --git a/sysdeps/i386/i686/multiarch/strcspn-c.c b/sysdeps/i386/i686/multiarch/strcspn-c.c index 6d61e190a8..ec230fb383 100644 --- a/sysdeps/i386/i686/multiarch/strcspn-c.c +++ b/sysdeps/i386/i686/multiarch/strcspn-c.c @@ -1,2 +1,4 @@ -#define __strcspn_sse2 __strcspn_ia32 -#include <sysdeps/x86_64/multiarch/strcspn-c.c> +#if IS_IN (libc) +# define __strcspn_sse2 __strcspn_ia32 +# include <sysdeps/x86_64/multiarch/strcspn-c.c> +#endif diff --git a/sysdeps/i386/i686/multiarch/varshift.c b/sysdeps/i386/i686/multiarch/varshift.c index 7760b966e2..6742a35d41 100644 --- a/sysdeps/i386/i686/multiarch/varshift.c +++ b/sysdeps/i386/i686/multiarch/varshift.c @@ -1 +1,3 @@ -#include <sysdeps/x86_64/multiarch/varshift.c> +#if IS_IN (libc) +# include <sysdeps/x86_64/multiarch/varshift.c> +#endif |