diff options
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.patch | 83 |
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 @@ | |||
1 | From 0fc2c2932699cfd68be96c820fddfdd79b48b788 Mon Sep 17 00:00:00 2001 | 1 | Upstream-Status: Submitted [mailing list] |
2 | Signed-off-by: Ross Burton <ross.burton@intel.com> | ||
3 | |||
4 | From 0e0a2a69261031d55d52b6045990e8982ea12912 Mon Sep 17 00:00:00 2001 | ||
2 | From: Khem Raj <raj.khem@gmail.com> | 5 | From: Khem Raj <raj.khem@gmail.com> |
3 | Date: Sat, 9 Jul 2016 07:52:19 +0000 | 6 | Date: Sat, 9 Jul 2016 07:52:19 +0000 |
4 | Subject: [PATCH] tests: Use FE_UPWARD only if its defined in fenv.h | 7 | Subject: [PATCH] tests: only run rounding tests if FE_UPWARD is present |
5 | |||
6 | On ARM, musl does not define FE_* when arch does not have | ||
7 | VFP, (which is right interpretation), therefore check if | ||
8 | its defined before using it | ||
9 | 8 | ||
10 | Fixes errors like | 9 | On ARM, musl does not define FE_* when the architecture does not have VFP (which |
10 | is the right interpretation). | ||
11 | 11 | ||
12 | tests/general/roundmode-pixelstore.c:82:19: error: 'FE_UPWARD' undeclared (first use in this function) | 12 | As these tests depend on calling fesetround(), skip the test if FE_UPWARD isn't |
13 | ret = fesetround(FE_UPWARD); | 13 | available. |
14 | ^~~~~~~~~ | ||
15 | 14 | ||
16 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | 15 | Signed-off-by: Ross Burton <ross.burton@intel.com> |
17 | --- | 16 | --- |
18 | Upstream-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 | ||
24 | diff --git a/tests/general/roundmode-getintegerv.c b/tests/general/roundmode-getintegerv.c | 21 | diff --git a/tests/general/roundmode-getintegerv.c b/tests/general/roundmode-getintegerv.c |
25 | index 28ecfaf..5c27579 100644 | 22 | index 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; | ||
38 | diff --git a/tests/general/roundmode-pixelstore.c b/tests/general/roundmode-pixelstore.c | 47 | diff --git a/tests/general/roundmode-pixelstore.c b/tests/general/roundmode-pixelstore.c |
39 | index 9284f43..3fcb396 100644 | 48 | index 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 | -- |
53 | 1.8.3.1 | 74 | 2.11.0 |
54 | 75 | ||