summaryrefslogtreecommitdiffstats
path: root/meta/recipes-graphics/piglit/piglit/0001-tests-Use-FE_UPWARD-only-if-its-defined-in-fenv.h.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta/recipes-graphics/piglit/piglit/0001-tests-Use-FE_UPWARD-only-if-its-defined-in-fenv.h.patch')
-rw-r--r--meta/recipes-graphics/piglit/piglit/0001-tests-Use-FE_UPWARD-only-if-its-defined-in-fenv.h.patch83
1 files changed, 52 insertions, 31 deletions
diff --git a/meta/recipes-graphics/piglit/piglit/0001-tests-Use-FE_UPWARD-only-if-its-defined-in-fenv.h.patch b/meta/recipes-graphics/piglit/piglit/0001-tests-Use-FE_UPWARD-only-if-its-defined-in-fenv.h.patch
index f851a92ceb..57eda2e207 100644
--- a/meta/recipes-graphics/piglit/piglit/0001-tests-Use-FE_UPWARD-only-if-its-defined-in-fenv.h.patch
+++ b/meta/recipes-graphics/piglit/piglit/0001-tests-Use-FE_UPWARD-only-if-its-defined-in-fenv.h.patch
@@ -1,54 +1,75 @@
1From 0fc2c2932699cfd68be96c820fddfdd79b48b788 Mon Sep 17 00:00:00 2001 1Upstream-Status: Submitted [mailing list]
2Signed-off-by: Ross Burton <ross.burton@intel.com>
3
4From 0e0a2a69261031d55d52b6045990e8982ea12912 Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com> 5From: Khem Raj <raj.khem@gmail.com>
3Date: Sat, 9 Jul 2016 07:52:19 +0000 6Date: Sat, 9 Jul 2016 07:52:19 +0000
4Subject: [PATCH] tests: Use FE_UPWARD only if its defined in fenv.h 7Subject: [PATCH] tests: only run rounding tests if FE_UPWARD is present
5
6On ARM, musl does not define FE_* when arch does not have
7VFP, (which is right interpretation), therefore check if
8its defined before using it
9 8
10Fixes errors like 9On ARM, musl does not define FE_* when the architecture does not have VFP (which
10is the right interpretation).
11 11
12tests/general/roundmode-pixelstore.c:82:19: error: 'FE_UPWARD' undeclared (first use in this function) 12As these tests depend on calling fesetround(), skip the test if FE_UPWARD isn't
13 ret = fesetround(FE_UPWARD); 13available.
14 ^~~~~~~~~
15 14
16Signed-off-by: Khem Raj <raj.khem@gmail.com> 15Signed-off-by: Ross Burton <ross.burton@intel.com>
17--- 16---
18Upstream-Status: Pending 17 tests/general/roundmode-getintegerv.c | 12 ++++++++----
19 18 tests/general/roundmode-pixelstore.c | 12 ++++++++----
20 tests/general/roundmode-getintegerv.c | 2 ++ 19 2 files changed, 16 insertions(+), 8 deletions(-)
21 tests/general/roundmode-pixelstore.c | 2 ++
22 2 files changed, 4 insertions(+)
23 20
24diff --git a/tests/general/roundmode-getintegerv.c b/tests/general/roundmode-getintegerv.c 21diff --git a/tests/general/roundmode-getintegerv.c b/tests/general/roundmode-getintegerv.c
25index 28ecfaf..5c27579 100644 22index 28ecfaf55..aa99044a1 100644
26--- a/tests/general/roundmode-getintegerv.c 23--- a/tests/general/roundmode-getintegerv.c
27+++ b/tests/general/roundmode-getintegerv.c 24+++ b/tests/general/roundmode-getintegerv.c
28@@ -81,7 +81,9 @@ piglit_init(int argc, char **argv) 25@@ -79,13 +79,17 @@ test(float val, int expect)
26 void
27 piglit_init(int argc, char **argv)
29 { 28 {
30 int ret; 29- int ret;
31 bool pass = true; 30 bool pass = true;
31- ret = fesetround(FE_UPWARD);
32- if (ret != 0) {
33- printf("Couldn't set rounding mode\n");
34+
32+#ifdef FE_UPWARD 35+#ifdef FE_UPWARD
33 ret = fesetround(FE_UPWARD); 36+ if (fesetround(FE_UPWARD) != 0) {
34+#endif 37+ printf("Setting rounding mode failed\n");
35 if (ret != 0) {
36 printf("Couldn't set rounding mode\n");
37 piglit_report_result(PIGLIT_SKIP); 38 piglit_report_result(PIGLIT_SKIP);
39 }
40+#else
41+ printf("Cannot set rounding mode\n");
42+ piglit_report_result(PIGLIT_SKIP);
43+#endif
44
45 pass = test(2.2, 2) && pass;
46 pass = test(2.8, 3) && pass;
38diff --git a/tests/general/roundmode-pixelstore.c b/tests/general/roundmode-pixelstore.c 47diff --git a/tests/general/roundmode-pixelstore.c b/tests/general/roundmode-pixelstore.c
39index 9284f43..3fcb396 100644 48index 8a029b257..57ec11c09 100644
40--- a/tests/general/roundmode-pixelstore.c 49--- a/tests/general/roundmode-pixelstore.c
41+++ b/tests/general/roundmode-pixelstore.c 50+++ b/tests/general/roundmode-pixelstore.c
42@@ -79,7 +79,9 @@ piglit_init(int argc, char **argv) 51@@ -79,13 +79,17 @@ test(float val, int expect)
52 void
53 piglit_init(int argc, char **argv)
43 { 54 {
44 int ret; 55- int ret;
45 bool pass = true; 56 bool pass = true;
57- ret = fesetround(FE_UPWARD);
58- if (ret != 0) {
59- printf("Couldn't set rounding mode\n");
60+
46+#ifdef FE_UPWARD 61+#ifdef FE_UPWARD
47 ret = fesetround(FE_UPWARD); 62+ if (fesetround(FE_UPWARD) != 0) {
48+#endif 63+ printf("Setting rounding mode failed\n");
49 if (ret != 0) {
50 printf("Couldn't set rounding mode\n");
51 piglit_report_result(PIGLIT_SKIP); 64 piglit_report_result(PIGLIT_SKIP);
65 }
66+#else
67+ printf("Cannot set rounding mode\n");
68+ piglit_report_result(PIGLIT_SKIP);
69+#endif
70
71 pass = test(2.2, 2) && pass;
72 pass = test(2.8, 3) && pass;
52-- 73--
531.8.3.1 742.11.0
54 75