This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH v2 6/10] Tilera (and Linux asm-generic) support for glibc
On 11/11/2011 1:00 PM, Roland McGrath wrote:
2011-11-03 Chris Metcalf<cmetcalf@tilera.com>
* sysdeps/unix/sysv/linux/faccessat.c (faccessat): Use the hidden
version of fxstatat64() to avoid requiring libc_nonshared.a.
You haven't explained why you think this is worthwhile.
The rationale for this one is that if you build glibc with "gcc -Os",
then the normal extern inline wrappers for fxstatat() and friends
don't get used in io/sys/stat.h (__USE_EXTERN_INLINES is not set), so
rather than becoming a direct call to __fxstatat(), it tries to
actually call fstatat64() directly. But for shared libc this isn't
available, since that symbol is defined in libc_nonshared.a, so
linking fails.
Calling directly to the "__*xstat*" version of the symbol and passing
_STAT_VER seems to be common throughout the glibc source code.
This actually isn't a bug fix specific to anything about tile or
the asm-generic Linux code, just for how we happen to be building glibc.
--
Chris Metcalf, Tilera Corp.
http://www.tilera.com