]> granicus.if.org Git - clang/commitdiff
Set LoopInterleaved in the PassManagerBuilder.
authorAlina Sbirlea <asbirlea@google.com>
Tue, 30 Apr 2019 21:29:23 +0000 (21:29 +0000)
committerAlina Sbirlea <asbirlea@google.com>
Tue, 30 Apr 2019 21:29:23 +0000 (21:29 +0000)
Summary: Corresponds to D61030.

Subscribers: jlebar, cfe-commits, llvm-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D61142

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@359616 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/BackendUtil.cpp

index 67a6bb0904e1af9ed4267df491120285fd731d8f..a43ebe9a2e07004af7834fb1306c96fe90e2fbe0 100644 (file)
@@ -560,6 +560,9 @@ void EmitAssemblyHelper::CreatePasses(legacy::PassManager &MPM,
   PMBuilder.LoopVectorize = CodeGenOpts.VectorizeLoop;
 
   PMBuilder.DisableUnrollLoops = !CodeGenOpts.UnrollLoops;
+  // Loop interleaving in the loop vectorizer has historically been set to be
+  // enabled when loop unrolling is enabled.
+  PMBuilder.LoopsInterleaved = CodeGenOpts.UnrollLoops;
   PMBuilder.MergeFunctions = CodeGenOpts.MergeFunctions;
   PMBuilder.PrepareForThinLTO = CodeGenOpts.PrepareForThinLTO;
   PMBuilder.PrepareForLTO = CodeGenOpts.PrepareForLTO;