[PATCH] Fix strstr/strcasestr/fma/fmaf on x86_64
Jakub Jelinek
jakub@redhat.com
Wed Sep 2 13:58:00 GMT 2009
On Wed, Sep 02, 2009 at 12:08:31PM +0200, Andreas Schwab wrote:
> > --- libc/sysdeps/x86_64/multiarch/strstr-c.c.jj 2009-07-23 08:59:29.000000000 +0200
> > +++ libc/sysdeps/x86_64/multiarch/strstr-c.c 2009-09-02 10:34:48.000000000 +0200
> > @@ -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;
>
> Shouldn't those use the libc_hidden* macros?
No. libc_hidden_* is for functions that are exported and we also want to
call them from within libc without hopping through PLT slot.
These *_sse{42,2} functions aren't exported at all, just the compiler needs
to be told about that when compiling this file, otherwise it uses a mov with
GOTPCREL instead of lea with PC relative relocation.
Jakub
More information about the Libc-alpha
mailing list