[PATCH] update libm-test-ulps for new exp

Szabolcs Nagy szabolcs.nagy@arm.com
Thu Jul 19 09:15:00 GMT 2018


On 18/07/18 18:25, Joseph Myers wrote:
> On Thu, 12 Jul 2018, Szabolcs Nagy wrote:
> 
>> Update error bounds for the new exp implementation on alpha, hppa,
>> m68k/coldfire, microblaze, mips/mips32, mips/mips64, nios2, powerpc,
>> riscv/nofpu, riscv/rv64, s390, sh and sparc.  Only non-nearest
>> rounding ulp bounds increased.  Did not run the math tests on real
>> hardware, but used the following ULP bounds to generate the new files:
> 
> This is adding ulps for non-to-nearest tests on some architectures that
> only support round-to-nearest and so have no such ulps in their existing
> files.
> 
> (I am generically dubious of such an update not based on actually running
> tests on the architectures involved - there can be architecture variations
> because of differences in e.g. whether multiply and add get fused - but
> adding ulps for tests that would not run on those architectures is
> definitely wrong.)
> 

i created this patch in case the changes get accepted late
so there is no time for maintainers to update the ulp file.
i agree that this is not good practice.

the numbers are upper bounds so max(fma-ulp,nofma-ulp) was
used for all targets.

in the long term i'd prefer if there was a generic ulp error
file and a target could just say it uses the generic bounds
(probably per function), so if a generic implementation is
changed, less ulp modifications are needed (targets may still
need to test in case of variation in target behaviour but
most of the time i'd expect the same bound to work for all,
if some target wants its own implementation then the burden
of maintaining separate ulp bounds is on that target)



More information about the Libc-alpha mailing list