Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
Fix strstr/strcasestr/fma/fmaf on x86_64.
  • Loading branch information
Jakub Jelinek authored and Ulrich Drepper committed Sep 3, 2009
1 parent d840539 commit 22bb992
Show file tree
Hide file tree
Showing 5 changed files with 19 additions and 6 deletions.
11 changes: 11 additions & 0 deletions ChangeLog
@@ -1,3 +1,14 @@
2009-09-02 Jakub Jelinek <jakub@redhat.com>

* sysdeps/x86_64/multiarch/strstr-c.c (__strstr_sse42, __strstr_sse2):
Add attribute_hidden.
* sysdeps/x86_64/multiarch/strcasestr-c.c (__strcasestr_sse42,
__strcasestr_sse2): Likewise.
* sysdeps/x86_64/multiarch/s_fma.c (__fma_sse2): Add attribute_hidden.
(__fma_fma): Make static.
* sysdeps/x86_64/multiarch/s_fmaf.c (__fmaf_sse2): Add attribute_hidden.
(__fmaf_fma): Make static.

2009-08-31 Andreas Schwab <schwab@redhat.com>

* libio/wfileops.c (_IO_wfile_seekoff): Remove dead code and
Expand Down
4 changes: 2 additions & 2 deletions sysdeps/x86_64/multiarch/s_fma.c
Expand Up @@ -24,10 +24,10 @@

#ifdef HAVE_AVX_SUPPORT

extern double __fma_sse2 (double x, double y, double z);
extern double __fma_sse2 (double x, double y, double z) attribute_hidden;


double
static double
__fma_fma (double x, double y, double z)
{
asm ("vfmadd213sd %3, %2, %0" : "=x" (x) : "0" (x), "x" (y), "xm" (z));
Expand Down
4 changes: 2 additions & 2 deletions sysdeps/x86_64/multiarch/s_fmaf.c
Expand Up @@ -23,10 +23,10 @@

#ifdef HAVE_AVX_SUPPORT

extern float __fmaf_sse2 (float x, float y, float z);
extern float __fmaf_sse2 (float x, float y, float z) attribute_hidden;


float
static float
__fmaf_fma (float x, float y, float z)
{
asm ("vfmadd213ss %3, %2, %0" : "=x" (x) : "0" (x), "x" (y), "xm" (z));
Expand Down
3 changes: 2 additions & 1 deletion sysdeps/x86_64/multiarch/strcasestr-c.c
Expand Up @@ -7,7 +7,8 @@

#include "string/strcasestr.c"

extern char *__strcasestr_sse42 (const char *, const char *);
extern char *__strcasestr_sse42 (const char *, const char *) attribute_hidden;
extern __typeof (__strcasestr_sse2) __strcasestr_sse2 attribute_hidden;

#if 1
libc_ifunc (__strcasestr,
Expand Down
3 changes: 2 additions & 1 deletion sysdeps/x86_64/multiarch/strstr-c.c
Expand Up @@ -7,6 +7,7 @@

#include "string/strstr.c"

extern char *__strstr_sse42 (const char *, const char *);
extern char *__strstr_sse42 (const char *, const char *) attribute_hidden;
extern __typeof (__strstr_sse2) __strstr_sse2 attribute_hidden;

libc_ifunc (strstr, HAS_SSE4_2 ? __strstr_sse42 : __strstr_sse2);

0 comments on commit 22bb992

Please sign in to comment.