[beignet] 03/04: Add pow-powr-tests.patch
Rebecca Palmer
rnpalmer-guest at moszumanska.debian.org
Wed Sep 28 20:27:09 UTC 2016
This is an automated email from the git hooks/post-receive script.
rnpalmer-guest pushed a commit to branch master
in repository beignet.
commit 6bda8840dccb17eb6506aea39153e1ba64e300b4
Author: Rebecca N. Palmer <rebecca_palmer at zoho.com>
Date: Wed Sep 28 19:58:32 2016 +0100
Add pow-powr-tests.patch
---
debian/changelog | 1 +
debian/patches/pow-powr-tests.patch | 43 +++++++++++++++++++++++++++++++++++++
debian/patches/series | 1 +
3 files changed, 45 insertions(+)
diff --git a/debian/changelog b/debian/changelog
index cd587f2..b4e067f 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -2,6 +2,7 @@ beignet (1.2.0-2) UNRELEASED; urgency=medium
* Fix FTBFS on kfreebsd-*.
* Make tests work with Python 3 and switch back to it.
+ * Add pow-powr-tests.patch.
-- Rebecca N. Palmer <rebecca_palmer at zoho.com> Sun, 25 Sep 2016 21:58:07 +0100
diff --git a/debian/patches/pow-powr-tests.patch b/debian/patches/pow-powr-tests.patch
new file mode 100644
index 0000000..aa7b99a
--- /dev/null
+++ b/debian/patches/pow-powr-tests.patch
@@ -0,0 +1,43 @@
+Description: test pow, not powr, on negative x
+
+powr(x,y) is explicitly undefined for negative x; on my hardware,
+it happens to be correct in default mode, but acts like pow(abs(x),y)
+in fast (OCL_STRICT_CONFORMANCE=0) mode, failing the test
+
+Author: Rebecca N. Palmer <rebecca_palmer at zoho.com>
+Forwarded: https://lists.freedesktop.org/archives/beignet/2016-September/008009.html
+
+--- beignet-1.2.0.orig/utests/utest_math_gen.py
++++ beignet-1.2.0/utests/utest_math_gen.py
+@@ -447,14 +447,20 @@ static float minmag(float x, float y){
+ nextafterUtests = func('nextafter','nextafterf',[nextafter_input_type1,nextafter_input_type2],nextafter_output_type,[nextafter_input_values1,nextafter_input_values2],'0 * FLT_ULP')
+
+ ##### gentype pow(gentype x, gentype y)
+- pow_base_values = base_input_values1
++ pow_base_values = [80, -80, 3.14, -3.14, 0.5, 1, -3,-4,2,0.0,-0.0,1500.24,-1500.24]
+ pow_input_values1 = []
+ pow_input_values2 = []
+ pow_input_values1,pow_input_values2=gene2ValuesLoop(pow_input_values1,pow_input_values2,pow_base_values)
+ pow_input_type1 = ['float','float2','float4','float8','float16']
+ pow_input_type2 = ['float','float2','float4','float8','float16']
+ pow_output_type = ['float','float2','float4','float8','float16']
+- powUtests = func('pow','powf',[pow_input_type1,pow_input_type2],pow_output_type,[pow_input_values1,pow_input_values2],'16 * FLT_ULP')
++ pow_cpu_func='''
++static float pow_utest(float x, float y){
++ if ((x == 0.0f) && (y == -INFINITY))
++ return INFINITY;
++ return pow(x,y);
++} '''
++ powUtests = func('pow','pow_utest',[pow_input_type1,pow_input_type2],pow_output_type,[pow_input_values1,pow_input_values2],'16 * FLT_ULP',pow_cpu_func)
+
+ ##### floatn pown(floatn x, intn y)
+ pown_input_values1 = [FLT_MAX_POSI,FLT_MIN_NEGA,FLT_MIN_POSI,FLT_MAX_NEGA,80, -80, 3.14, -3.14, 0.5, 1, 0.0,1500.24,-1500.24]
+@@ -469,7 +475,7 @@ static float pown(float x, int y){
+ pownUtests = func('pown','pown',[pown_input_type1,pown_input_type2],pown_output_type,[pown_input_values1,pown_input_values2],'16 * FLT_ULP', pown_cpu_func)
+
+ ##### gentype powr(gentype x, gentype y)
+- powr_input_values1 = [80, -80, 3.14, 1, 1.257, +0.0, -0.0, +0.0, -0.0, +0.0, -0.0, +1, +1, -80, +0.0, -0.0, +0.0, -0.0, 'INFINITY','INFINITY', +1, +1, +0.0, 2.5,' NAN', 'NAN', 'NAN']
++ powr_input_values1 = [80, 80, 3.14, 1, 1.257, +0.0, -0.0, +0.0, -0.0, +0.0, -0.0, +1, +1, 80, +0.0, -0.0, +0.0, -0.0, 'INFINITY','INFINITY', +1, +1, +0.0, 2.5,' NAN', 'NAN', 'NAN']
+ powr_input_values2 = [5.5, 6,7, +0.0, -0.0, -1, -15.67, '-INFINITY', '-INFINITY', 1, -2.7, 10.5, 3.1415, 3.5, -0.0, -0.0, +0.0, +0.0, +0.0, -0.0, 'INFINITY', '-INFINITY', 'NAN', 'NAN', -1.5, +0.0, 1.5]
+ powr_input_type1 = ['float','float2','float4','float8','float16']
+ powr_input_type2 = ['float','float2','float4','float8','float16']
diff --git a/debian/patches/series b/debian/patches/series
index 827d2df..176aa1a 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -9,3 +9,4 @@ find-python35.patch
docs-broken-links.patch
cl_accelerator_intel.patch
support-python3.patch
+pow-powr-tests.patch
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-opencl/beignet.git
More information about the Pkg-opencl-commits
mailing list