This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RE: [PATCH 2/2] Remove ancient GCC string inlines


> Joseph Myers wrote:
> On Fri, 9 Oct 2015, Wilco Dijkstra wrote:
> 
> > Move mempcpy, strcpy and stpcpy inlines to string/string-inlines.c as
> > they are no longer used in string2.h. Passes AArch64, x86 and x64
> > regression.
> 
> I take it's that's full testsuite runs, not just the string/ directory
> (so, in particular, you verified that the ABI tests for libc.so pass and
> that these functions are still in libc.so for x86 - I don't see quite how
> that would work with this patch since you didn't touch
> sysdeps/i386/string-inlines.c).

You wrote in http://sourceware.org/ml/libc-alpha/2015-05/msg00770.html:
"(sysdeps/i386/string-inlines.c can be ignored or removed since plain i386 
is no longer supported; only string/string-inlines.c and 
sysdeps/i386/i486/string-inlines.c are relevant.)"

Looking at the x86 build, string-inlines.o is indeed string/string-inlines.c so
That confirms sysdeps/i386/string-inlines.c is not built at all. No idea what magic
ensures this, but that's what I get...

I did full testsuite runs of course, and the only failures are the usual suspects
(besides nptl/*):

tests.sum:FAIL: debug/tst-backtrace2
tests.sum:FAIL: debug/tst-backtrace3
tests.sum:FAIL: debug/tst-backtrace4
tests.sum:FAIL: debug/tst-backtrace5
tests.sum:FAIL: debug/tst-backtrace6
tests.sum:FAIL: debug/tst-chk4
tests.sum:FAIL: debug/tst-chk5
tests.sum:FAIL: debug/tst-chk6
tests.sum:FAIL: debug/tst-lfschk4
tests.sum:FAIL: debug/tst-lfschk5
tests.sum:FAIL: debug/tst-lfschk6
tests.sum:FAIL: dlfcn/bug-atexit3
tests.sum:FAIL: elf/check-abi-libc
tests.sum:FAIL: grp/testgrp
tests.sum:FAIL: posix/globtest
tests.sum:FAIL: rt/tst-cpuclock2
tests.sum:FAIL: rt/tst-mqueue8
tests.sum:FAIL: rt/tst-mqueue8x

> As a followup, such functions (no longer used in inlines in any installed
> header) could be made into compat symbols (not in libc.a, not available
> for new links, not included in future glibc ports).

Yes that is possible. I'd first like to fix the rest of the string2.h header,
for example there are still quite a few inlines that are either unnecessary,
could be done in GCC or could be done as generic optimizations in the actual 
library function that benefit all inputs, not just rare cases.

Wilco



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]