mirror of
https://src.fedoraproject.org/rpms/mesa.git
synced 2024-11-24 09:32:42 +00:00
40 lines
1.6 KiB
Diff
40 lines
1.6 KiB
Diff
From f4a3905c37c0e299fb3bd48120e46e1f7817c90e Mon Sep 17 00:00:00 2001
|
|
From: Nikita Popov <npopov@redhat.com>
|
|
Date: Mon, 11 Mar 2024 14:45:41 +0100
|
|
Subject: [PATCH] Pass no-verify-fixpoint option to instcombine in LLVM 18
|
|
|
|
When LLVM 18 is used, pass the no-verify-fixpoint option when
|
|
running the instcombine pass. Otherwise LLVM may abort with an
|
|
error.
|
|
|
|
The background here is that this option is enabled by default for
|
|
testing purposes, because instcombine is normally only explicitly
|
|
invoked like this inside tests. If it is used in an actual
|
|
production pipeline, the no-verify-fixpoint option needs to be
|
|
enabled.
|
|
|
|
This should fix the issue reported at
|
|
https://bugzilla.redhat.com/show_bug.cgi?id=2268800.
|
|
---
|
|
src/gallium/auxiliary/gallivm/lp_bld_init.c | 4 ++++
|
|
1 file changed, 4 insertions(+)
|
|
|
|
diff --git a/src/gallium/auxiliary/gallivm/lp_bld_init.c b/src/gallium/auxiliary/gallivm/lp_bld_init.c
|
|
index cd2108f3a08..1345d85b224 100644
|
|
--- a/src/gallium/auxiliary/gallivm/lp_bld_init.c
|
|
+++ b/src/gallium/auxiliary/gallivm/lp_bld_init.c
|
|
@@ -609,7 +609,11 @@ gallivm_compile_module(struct gallivm_state *gallivm)
|
|
LLVMRunPasses(gallivm->module, passes, LLVMGetExecutionEngineTargetMachine(gallivm->engine), opts);
|
|
|
|
if (!(gallivm_perf & GALLIVM_PERF_NO_OPT))
|
|
+#if LLVM_VERSION_MAJOR >= 18
|
|
+ strcpy(passes, "sroa,early-cse,simplifycfg,reassociate,mem2reg,instsimplify,instcombine<no-verify-fixpoint>");
|
|
+#else
|
|
strcpy(passes, "sroa,early-cse,simplifycfg,reassociate,mem2reg,instsimplify,instcombine");
|
|
+#endif
|
|
else
|
|
strcpy(passes, "mem2reg");
|
|
|
|
--
|
|
2.43.0
|
|
|