diff options
author | Sanjoy Das <sanjoy@playingwithpointers.com> | 2015-10-06 21:44:49 +0000 |
---|---|---|
committer | Sanjoy Das <sanjoy@playingwithpointers.com> | 2015-10-06 21:44:49 +0000 |
commit | 5c8bead46da91c348d37bcbefb431f5ff122ab19 (patch) | |
tree | c4ef42fbec27b10e8ab9e64b612958333da10136 /llvm/lib/IR/Module.cpp | |
parent | 088bb0ea9f5223c7c584163a49ddd4d9291581d5 (diff) | |
download | llvm-5c8bead46da91c348d37bcbefb431f5ff122ab19.zip llvm-5c8bead46da91c348d37bcbefb431f5ff122ab19.tar.gz llvm-5c8bead46da91c348d37bcbefb431f5ff122ab19.tar.bz2 |
[IndVars] Don't break dominance in `eliminateIdentitySCEV`
Summary:
After r249211, `getSCEV(X) == getSCEV(Y)` does not guarantee that X and
Y are related in the dominator tree, even if X is an operand to Y (I've
included a toy example in comments, and a real example as a test case).
This commit changes `SimplifyIndVar` to require a `DominatorTree`. I
don't think this is a problem because `ScalarEvolution` requires it
anyway.
Fixes PR25051.
Depends on D13459.
Reviewers: atrick, hfinkel
Subscribers: joker.eph, llvm-commits, sanjoy
Differential Revision: http://reviews.llvm.org/D13460
llvm-svn: 249471
Diffstat (limited to 'llvm/lib/IR/Module.cpp')
0 files changed, 0 insertions, 0 deletions