diff options
author | Chandler Carruth <chandlerc@gmail.com> | 2015-01-17 14:16:18 +0000 |
---|---|---|
committer | Chandler Carruth <chandlerc@gmail.com> | 2015-01-17 14:16:18 +0000 |
commit | 4f8f307c77fa5b4de2eec8868b8734b2ab93dd22 (patch) | |
tree | 5c9be8d4edf8e4e9c5cabcde80b0ce461f5d6254 /llvm/lib/Transforms/InstCombine/InstructionCombining.cpp | |
parent | 74e7fb9aaeb1b21cfb26cbaf0352ba6b5f9fb272 (diff) | |
download | bcm5719-llvm-4f8f307c77fa5b4de2eec8868b8734b2ab93dd22.tar.gz bcm5719-llvm-4f8f307c77fa5b4de2eec8868b8734b2ab93dd22.zip |
[PM] Split the LoopInfo object apart from the legacy pass, creating
a LoopInfoWrapperPass to wire the object up to the legacy pass manager.
This switches all the clients of LoopInfo over and paves the way to port
LoopInfo to the new pass manager. No functionality change is intended
with this iteration.
llvm-svn: 226373
Diffstat (limited to 'llvm/lib/Transforms/InstCombine/InstructionCombining.cpp')
-rw-r--r-- | llvm/lib/Transforms/InstCombine/InstructionCombining.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/llvm/lib/Transforms/InstCombine/InstructionCombining.cpp b/llvm/lib/Transforms/InstCombine/InstructionCombining.cpp index 549a0bb4d4f..fb1332a5493 100644 --- a/llvm/lib/Transforms/InstCombine/InstructionCombining.cpp +++ b/llvm/lib/Transforms/InstCombine/InstructionCombining.cpp @@ -799,8 +799,9 @@ Instruction *InstCombiner::FoldOpIntoPhi(Instruction &I) { // If the incoming non-constant value is in I's block, we will remove one // instruction, but insert another equivalent one, leading to infinite // instcombine. + auto *LIWP = getAnalysisIfAvailable<LoopInfoWrapperPass>(); if (isPotentiallyReachable(I.getParent(), NonConstBB, DT, - getAnalysisIfAvailable<LoopInfo>())) + LIWP ? &LIWP->getLoopInfo() : nullptr)) return nullptr; } |