diff options
author | Matt Turner <[email protected]> | 2019-01-22 15:06:38 -0800 |
---|---|---|
committer | Matt Turner <[email protected]> | 2019-01-24 11:07:24 -0800 |
commit | 70a7ece035785978167fe0019b6ff603415b1f3b (patch) | |
tree | 473c4590a37e5af830a9ecad2e95baf5202f01ab /src/gallium/drivers/llvmpipe | |
parent | 385ee7c3d0536424eb9822fe873d4410b831cbfe (diff) |
gallivm: Return true from arch_rounding_available() if NEON is available
LLVM uses the single instruction "FRINTI" to implement llvm.nearbyint.
Fixes the rounding tests of lp_test_arit.
Bug: https://bugs.gentoo.org/665570
Reviewed-by: Roland Scheidegger <[email protected]>
Diffstat (limited to 'src/gallium/drivers/llvmpipe')
-rw-r--r-- | src/gallium/drivers/llvmpipe/lp_test_arit.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/gallium/drivers/llvmpipe/lp_test_arit.c b/src/gallium/drivers/llvmpipe/lp_test_arit.c index acba7ed44a8..eb3f67dc1fe 100644 --- a/src/gallium/drivers/llvmpipe/lp_test_arit.c +++ b/src/gallium/drivers/llvmpipe/lp_test_arit.c @@ -458,7 +458,8 @@ test_unary(unsigned verbose, FILE *fp, const struct unary_test_t *test, unsigned continue; } - if (test->ref == &nearbyintf && length == 2 && + if (!util_cpu_caps.has_neon && + test->ref == &nearbyintf && length == 2 && ref != roundf(testval)) { /* FIXME: The generic (non SSE) path in lp_build_iround, which is * always taken for length==2 regardless of native round support, |