This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH] Fix strstr/strcasestr/fma/fmaf on x86_64
- From: Jakub Jelinek <jakub at redhat dot com>
- To: Andreas Schwab <schwab at linux-m68k dot org>
- Cc: Ulrich Drepper <drepper at redhat dot com>, Glibc hackers <libc-alpha at sources dot redhat dot com>
- Date: Wed, 2 Sep 2009 12:12:31 +0200
- Subject: Re: [PATCH] Fix strstr/strcasestr/fma/fmaf on x86_64
- References: <20090902085848.GC3611@sunsite.ms.mff.cuni.cz> <m31vmpd5gg.fsf@hase.home>
- Reply-to: Jakub Jelinek <jakub at redhat dot com>
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