This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH v3 1/3] Cleanup __ieee754_sqrt(f/l)
Joseph Myers wrote:
> What variants exactly?
powerpc-linux-gnu-soft
powerpc-linux-gnu
powerpc64-linux-gnu
x86_64-linux-gnu
arm-linux-gnueabihf
aarch64-linux-gnu
sparc64-linux-gnu
sparcv9-linux-gnu
390-linux-gnu
m68k-linux-gnu
i486-linux-gnu
i586-linux-gnu
mips64-linux-gnu-n64
Maybe we can agree on a useful subset in the script - the number of variants for
some ISAs is ridiculous, do we really need 24 variants for MIPS? I suppose we
can also remove tile and a few others like sh given the recent discussions of
obsoleting those ports?
> What execution testing have you done? It would be a good idea for that to
> include at least one configuration where sqrt is not inlined by the
> compiler, and also to include 32-bit x86 to make sure the special-case
> wrappers there (to avoid double rounding) continue to work as expected.
I run on AArch64 and x64 when it is relevant. Finding a config that doesn't inline
sqrt may be difficult, since pretty much all ISAs have a sqrt instruction.
> Why is the benchtests/sqrt-inputs change needed? I think it's correct for
> benchmark inputs to refer to the include name as in user code, not to the
> path within the glibc source tree, and certainly this test should not be
> doing things differently from all the others.
We build the testsuite explicitly with -fmath-errno so there will be calls to sqrt.
Given the include path is incorrect when running the testsuite (it uses internal
paths rather than external ones), we get redirection to __ieee754_sqrt which is
not exported outside of GLIBC. Since the include path issue is a separate bug
I just ensure the sqrt benchmark gets the right include - when it is fixed we can
easily change it back.
Btw we'll also need to create some real inputs and decide what we want to test:
the inlined sqrt instruction or the sqrt call in GLIBC (which will usually be the sqrt
instruction), or the sqrt emulation...
I'll fix the ChangeLogs shortly.
Wilco