IRCE: use SCEVs instead of llvm::Value's for intermediate
authorSanjoy Das <sanjoy@playingwithpointers.com>
Sat, 21 Feb 2015 22:07:32 +0000 (22:07 +0000)
committerSanjoy Das <sanjoy@playingwithpointers.com>
Sat, 21 Feb 2015 22:07:32 +0000 (22:07 +0000)
commitc5e1132ac2ba9b2efc552d4be050c800ddcbaf72
treee9394a360f4d161466952c0fc17fa215b33285c7
parent29f97a6c46c3a8323eaf2a2a0bfe10e790972d27
IRCE: use SCEVs instead of llvm::Value's for intermediate
calculations.  Semantically non-functional change.

This gets rid of some of the SCEV -> Value -> SCEV round tripping and
the Construct(SMin|SMax)Of and MaybeSimplify helper routines.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@230150 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Transforms/Scalar/InductiveRangeCheckElimination.cpp
test/Transforms/IRCE/multiple-access-no-preloop.ll
test/Transforms/IRCE/single-access-no-preloop.ll
test/Transforms/IRCE/single-access-with-preloop.ll