authorgravatar for 124872+jedisct1@users.noreply.github.comFrank Denis <124872+jedisct1@users.noreply.github.com> 2020-11-11 17:07:56+01:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2020-11-16 15:00:16-07:00
logc8b6e407baa30b41693301fcbf0a17bd3432619b
tree9464917d4f1f26dab552731a2c22ec597bfc006d
parent9e1e91dafc9857b41a513c6c6506150f1a2f3f7f

Enable loop interleaving when unrolling is enabled

This mimics clang's default behavior.

1 files changed, 1 insertions(+), 0 deletions(-)

src/zig_llvm.cpp+1
...@@ -221,6 +221,7 @@ bool ZigLLVMTargetMachineEmitToFile(LLVMTargetMachineRef targ_machine_ref, LLVMM...@@ -221,6 +221,7 @@ bool ZigLLVMTargetMachineEmitToFile(LLVMTargetMachineRef targ_machine_ref, LLVMM
221 PMBuilder->DisableUnrollLoops = is_debug;221 PMBuilder->DisableUnrollLoops = is_debug;
222 PMBuilder->SLPVectorize = !is_debug;222 PMBuilder->SLPVectorize = !is_debug;
223 PMBuilder->LoopVectorize = !is_debug;223 PMBuilder->LoopVectorize = !is_debug;
224 PMBuilder->LoopsInterleaved = !PMBuilder->DisableUnrollLoops;
224 PMBuilder->RerollLoops = !is_debug;225 PMBuilder->RerollLoops = !is_debug;
225 // Leaving NewGVN as default (off) because when on it caused issue #673226 // Leaving NewGVN as default (off) because when on it caused issue #673
226 //PMBuilder->NewGVN = !is_debug;227 //PMBuilder->NewGVN = !is_debug;