diff options
Diffstat (limited to 'llvm/lib/Transforms/Scalar/NaryReassociate.cpp')
-rw-r--r-- | llvm/lib/Transforms/Scalar/NaryReassociate.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/llvm/lib/Transforms/Scalar/NaryReassociate.cpp b/llvm/lib/Transforms/Scalar/NaryReassociate.cpp index 0ac1edfee93..84ccb507a90 100644 --- a/llvm/lib/Transforms/Scalar/NaryReassociate.cpp +++ b/llvm/lib/Transforms/Scalar/NaryReassociate.cpp @@ -157,7 +157,11 @@ PreservedAnalyses NaryReassociatePass::run(Function &F, auto *TTI = &AM.getResult<TargetIRAnalysis>(F); bool Changed = runImpl(F, AC, DT, SE, TLI, TTI); + + // FIXME: We need to invalidate this to avoid PR28400. Is there a better + // solution? AM.invalidate<ScalarEvolutionAnalysis>(F); + if (!Changed) return PreservedAnalyses::all(); |