Mesa (master): gallium: Restore VSX for llvm >= 4
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Fri Sep 13 00:29:33 UTC 2019
Module: Mesa
Branch: master
Commit: 5a9dec7534c09b7eb1646085517dcce5ff48033c
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=5a9dec7534c09b7eb1646085517dcce5ff48033c
Author: Adam Jackson <ajax at redhat.com>
Date: Thu Sep 12 13:07:05 2019 -0400
gallium: Restore VSX for llvm >= 4
Accidentally dropped in 4fdd455eeb7cffadee86f06c685005a3b64ce94b.
Fixes: 4fdd455e ("gallium: Require LLVM >= 3.4)
Reported-by: Ilia Mirkin <imirkin at alum.mit.edu>
Reviewed-by: Timothy Arceri <tarceri at itsqueeze.com>
---
src/gallium/auxiliary/gallivm/lp_bld_misc.cpp | 14 ++++++++++++++
1 file changed, 14 insertions(+)
diff --git a/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp b/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp
index 3580ea6dd4b..52e9f7bc770 100644
--- a/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp
+++ b/src/gallium/auxiliary/gallivm/lp_bld_misc.cpp
@@ -410,6 +410,20 @@ lp_build_create_jit_compiler_for_module(LLVMExecutionEngineRef *OutJIT,
if (util_cpu_caps.has_altivec) {
MAttrs.push_back("-vsx");
}
+#else
+ /*
+ * Bug 25503 is fixed, by the same fix that fixed
+ * bug 26775, in versions of LLVM later than 3.8 (starting with 3.8.1).
+ * BZ 33531 actually comprises more than one bug, all of
+ * which are fixed in LLVM 4.0.
+ *
+ * With LLVM 4.0 or higher:
+ * Make sure VSX instructions are ENABLED (if supported), unless
+ * VSX instructions are explicitly enabled/disabled via GALLIVM_VSX=1 or 0.
+ */
+ if (util_cpu_caps.has_altivec) {
+ MAttrs.push_back(util_cpu_caps.has_vsx ? "+vsx" : "-vsx");
+ }
#endif
#endif
More information about the mesa-commit
mailing list