diff options
Diffstat (limited to 'llvm/lib/Transforms')
-rw-r--r-- | llvm/lib/Transforms/Scalar/LoopRotation.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/llvm/lib/Transforms/Scalar/LoopRotation.cpp b/llvm/lib/Transforms/Scalar/LoopRotation.cpp index 5e6c2da08cc..14621e51b60 100644 --- a/llvm/lib/Transforms/Scalar/LoopRotation.cpp +++ b/llvm/lib/Transforms/Scalar/LoopRotation.cpp @@ -165,6 +165,11 @@ static bool rotateLoop(Loop *L, unsigned MaxHeaderSize, LoopInfo *LI, << " instructions: "; L->dump()); return false; } + if (Metrics.convergent) { + DEBUG(dbgs() << "LoopRotation: NOT rotating - contains convergent " + "instructions: "; L->dump()); + return false; + } if (Metrics.NumInsts > MaxHeaderSize) return false; } |