diff --git a/src/interop/newpm.jl b/src/interop/newpm.jl index 554dbb08..af492bac 100644 --- a/src/interop/newpm.jl +++ b/src/interop/newpm.jl @@ -4,7 +4,9 @@ import ..LLVM: pass_string, options_string, add! @module_pass "CPUFeatures" CPUFeaturesPass @module_pass "RemoveNI" RemoveNIPass -@module_pass "LowerSIMDLoop" LowerSIMDLoopPass +@static if VERSION < v"1.10.0-beta3.44" + @module_pass "LowerSIMDLoop" LowerSIMDLoopPass +end @module_pass "RemoveJuliaAddrspaces" RemoveJuliaAddrspacesPass @module_pass "RemoveAddrspaces" RemoveAddrspacesPass @static if VERSION < v"1.11.0-DEV.208" @@ -44,6 +46,9 @@ options_string(options::GCInvariantVerifierPassOptions) = options.strong ? "= v"1.10.0-beta3.44" + @loop_pass "LowerSIMDLoop" LowerSIMDLoopPass +end # The entire Julia pipeline struct JuliaPipelinePassOptions diff --git a/test/newpm_tests.jl b/test/newpm_tests.jl index 6d7b7040..0f4453ad 100644 --- a/test/newpm_tests.jl +++ b/test/newpm_tests.jl @@ -527,9 +527,14 @@ host_t = Target(triple=host_triple) add!(fpm, EarlyCSEPass()) add!(fpm, AllocOptPass()) end - add!(mpm, LowerSIMDLoopPass()) + @static if VERSION < v"1.10.0-beta3.44" + add!(mpm, LowerSIMDLoopPass()) + end add!(mpm, NewPMFunctionPassManager) do fpm add!(fpm, NewPMLoopPassManager) do lpm + @static if VERSION >= v"1.10.0-beta3.44" + add!(lpm, LowerSIMDLoopPass()) + end add!(lpm, LoopRotatePass()) end add!(fpm, NewPMLoopPassManager, #=UseMemorySSA=#true) do lpm