This is the mail archive of the
mailing list for the libc-ports project.
Re: [patch, mips] Improved memset for MIPS
- From: "Carlos O'Donell" <carlos at redhat dot com>
- To: Steve Ellcey <sellcey at mips dot com>
- Cc: libc-ports at sourceware dot org
- Date: Tue, 10 Sep 2013 17:01:26 -0400
- Subject: Re: [patch, mips] Improved memset for MIPS
- Authentication-results: sourceware.org; auth=none
- References: <93a232b5-9d0b-4a27-bbb5-16e3ae7c4b89 at BAMAIL02 dot ba dot imgtec dot org> <522957A4 dot 2030400 at redhat dot com> <1378483403 dot 5770 dot 307 dot camel at ubuntu-sellcey> <522A0CF8 dot 8040008 at redhat dot com> <1378510388 dot 5770 dot 346 dot camel at ubuntu-sellcey> <522A9197 dot 9000601 at redhat dot com> <1378844980 dot 5770 dot 378 dot camel at ubuntu-sellcey>
On 09/10/2013 04:29 PM, Steve Ellcey wrote:
> On Fri, 2013-09-06 at 22:38 -0400, Carlos O'Donell wrote:
>> No, libgcc won't matter unless you do cancellation, and libstdc++ doesn't
>> matter because it's not a C++ application. You'll just get glibc using
>> the versions of those from the related prefix directories. I don't think
>> it should be making any difference here.
>> You've certainly got your share of weird environment issues :-)
> As an FYI, I think I have figured out my testing problems. I normally
> build cross toolchains by building binutils; gcc (using
> --without-headers); glibc; then a final GCC. When building on a MIPS
> machine I was doing the same thing and then going back to the glibc
> object directory and running 'make check' or 'make bench'. I think the
> problem with this was that the GCC now in my path (the final GCC) is not
> the same GCC that I used to build glibc (the initial --without-headers
> GCC). This seemed to trigger a partial rebuild of glibc along with
> building the tests and that in turn caused all sorts of weird problems.
> If I build the toolchain, then build a new glibc using the final GCC and
> run 'make check' or 'make bench' in that glibc object directory I get
> just the expected MIPS failures.
> Now that I can see the results of 'make bench' I do have a question,
> what is the difference between the results in bench-memset.out and
> bench-memset-ifunc.out? MIPS doesn't yet support IFUNC. It looks like
> the results in the two files are pretty close, so maybe they are
> identical runs on machines with no IFUNC?
You get the default implementation of __libc_ifunc_impl_list (the function
used by the testing infrastructure to iterate the functions implemented
as ifuncs) which adds no additional functions to the test list. You still
test the usual defaults e.g. simple, builtin, and original function entry.
Therefore it's the same as the non-IFUNC version with the results being
the same modulo testing variance.
Does that answer your question?