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 1/3] New make target gen-libm-inputs


On 2015-12-11 15:49, Siddhesh Poyarekar wrote:
> Hi,
> 
> Create a new target gen-libm-inputs to generate auto-libm-test-out
> from auto-libm-test-in and a newly generated
> auto-libm-test-in-benchtests.  The latter file is now generated from
> benchmark inputs in benchtests/*-inputs for all math functions that
> are included in the benchmarks.  This includes a few thousand inputs
> for each of the functions to the test, effectively testing all paths
> of the major functions.  I discovered the need for this when when
> patching sincos (patchset coming up soon) where the current test
> inputs did not catch a bug.
> 
> Patch 2/3 and 3/3 are regenerated files, the first being regenerated
> auto-libm-test-out and the other being the x86_64 libm-test-ulps.  The
> ulp update is trivial but the auto-libm-test-out update is massive
> (136MB), which is why I have left both out and will be pushing as
> obvious once this patch is approved.

Can you maybe share the patch 3, so that we can see the impact on the
ULPs?

> Siddhesh
> 
> 	* Makefile.in (gen-libm-inputs): New target.
> 	* benchtests/Makefile (auto-libm-test-in-benchtests): New
> 	target.
> 	* math/Makefile (gen-libm-inputs): New target.
> 	* math/README.libm-test: Update to include new target.
> 	* math/gen-auto-libm-tests.c: Update instructions to run the
> 	test inputs generator.
> 	(main): Accept multiple input files.
> 
> ---
>  Makefile.in                |  3 +++
>  benchtests/Makefile        |  7 +++++++
>  math/Makefile              | 28 ++++++++++++++++++++++++++++
>  math/README.libm-test      | 13 ++++++++++---
>  math/gen-auto-libm-tests.c | 32 +++++++++++++++-----------------
>  5 files changed, 63 insertions(+), 20 deletions(-)
> 
> diff --git a/Makefile.in b/Makefile.in
> index 710ce7e..6148495 100644
> --- a/Makefile.in
> +++ b/Makefile.in
> @@ -18,3 +18,6 @@ bench bench-clean:
>  # Convenience target to rebuild ULPs for all math tests.
>  regen-ulps:
>  	$(MAKE) -C $(srcdir)/math $(PARALLELMFLAGS) objdir=`pwd` $@
> +
> +gen-libm-inputs:
> +	$(MAKE) -C $(srcdir)/math $(PARALLELMFLAGS) objdir=`pwd` $@
> diff --git a/benchtests/Makefile b/benchtests/Makefile
> index d6f0b15..2c51c4e 100644
> --- a/benchtests/Makefile
> +++ b/benchtests/Makefile
> @@ -179,3 +179,10 @@ $(objpfx)bench-%.c: %-inputs $(bench-deps)
>  	fi; \
>  	scripts/bench.py $(patsubst %-inputs,%,$<); } > $@-tmp
>  	mv -f $@-tmp $@
> +
> +# Auto-generate inputs for libm tests.
> +
> +auto-libm-test-in-benchtests: $(..)scripts/gen-libm-test-from-benchtests.awk \
> +			      $(bench-math:%=%-inputs)

This awk file is missing in your patch.

Aurelien

-- 
Aurelien Jarno                          GPG: 4096R/1DDD8C9B
aurelien@aurel32.net                 http://www.aurel32.net


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