aboutsummaryrefslogtreecommitdiff
path: root/src/zig_llvm.cpp
diff options
context:
space:
mode:
authorFrank Denis <github@pureftpd.org>2020-11-11 17:07:56 +0100
committerAndrew Kelley <andrew@ziglang.org>2020-11-16 13:40:52 -0800
commit0c520cd32df1dd38fdedf2ace388b465fab69b80 (patch)
treeec0662a0cc85c8d92c34025e651fcdc4488d375f /src/zig_llvm.cpp
parentba967ae9a1eada3a08803470f557bafcfb69151e (diff)
downloadzig-0c520cd32df1dd38fdedf2ace388b465fab69b80.tar.gz
zig-0c520cd32df1dd38fdedf2ace388b465fab69b80.zip
Enable loop interleaving when unrolling is enabled
This mimics clang's default behavior.
Diffstat (limited to 'src/zig_llvm.cpp')
-rw-r--r--src/zig_llvm.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/zig_llvm.cpp b/src/zig_llvm.cpp
index 1a81cf33ef..73864569bb 100644
--- a/src/zig_llvm.cpp
+++ b/src/zig_llvm.cpp
@@ -221,6 +221,7 @@ bool ZigLLVMTargetMachineEmitToFile(LLVMTargetMachineRef targ_machine_ref, LLVMM
PMBuilder->DisableUnrollLoops = is_debug;
PMBuilder->SLPVectorize = !is_debug;
PMBuilder->LoopVectorize = !is_debug;
+ PMBuilder->LoopsInterleaved = !PMBuilder->DisableUnrollLoops;
PMBuilder->RerollLoops = !is_debug;
// Leaving NewGVN as default (off) because when on it caused issue #673
//PMBuilder->NewGVN = !is_debug;