summaryrefslogtreecommitdiffstats
path: root/llvm/lib/IR/Instructions.cpp
diff options
context:
space:
mode:
authorSanjoy Das <sanjoy@playingwithpointers.com>2016-05-11 17:41:26 +0000
committerSanjoy Das <sanjoy@playingwithpointers.com>2016-05-11 17:41:26 +0000
commit787c2460c2da6e8aabb196a820ba5d14db23e528 (patch)
tree530bf2969e9e45fb03df182bfba49bc6b2252d32 /llvm/lib/IR/Instructions.cpp
parent8311c446fc7eedb9b7e0a39251420ee876f77113 (diff)
downloadbcm5719-llvm-787c2460c2da6e8aabb196a820ba5d14db23e528.tar.gz
bcm5719-llvm-787c2460c2da6e8aabb196a820ba5d14db23e528.zip
[SCEV] Be more aggressive around proving no-wrap
... for AddRec's in loops for which SCEV is unable to compute a max tripcount. This is not a problem for "normal" loops[0] that don't have guards or assumes, but helps in cases where we have guards or assumes in the loop that can be used to constrain incoming values over the backedge. This partially fixes PR27691 (we still don't handle the NUW case). [0]: for "normal" loops, in the cases where we'd be able to prove no-wrap via isKnownPredicate, we'd also be able to compute a max tripcount. llvm-svn: 269211
Diffstat (limited to 'llvm/lib/IR/Instructions.cpp')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud