aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
diff options
context:
space:
mode:
authorJohannes Doerfert <doerfert@cs.uni-saarland.de>2016-04-23 14:31:17 +0000
committerJohannes Doerfert <doerfert@cs.uni-saarland.de>2016-04-23 14:31:17 +0000
commitac9c32e216d23d9be9751726bc440db3ac5deac9 (patch)
treed2cf4a14861bb3bf2d587ae06f9f0c04cbf15237 /llvm/lib/Transforms/Utils/BasicBlockUtils.cpp
parenta64a8fc969e36f587166e48c5450a38f48690137 (diff)
downloadllvm-ac9c32e216d23d9be9751726bc440db3ac5deac9.zip
llvm-ac9c32e216d23d9be9751726bc440db3ac5deac9.tar.gz
llvm-ac9c32e216d23d9be9751726bc440db3ac5deac9.tar.bz2
Translate SCEVs to isl_pw_aff and their invalid domain
The SCEVAffinator will now produce not only the isl representaiton of a SCEV but also the domain under which it is invalid. This is used to record possible overflows that can happen in the statement domains in the statements invalid domain. The result is that invalid loads have an accurate execution contexts with regards to the validity of their statements domain. While the SCEVAffinator currently is only taking "no-wrapping" assumptions, we can add more withouth worrying about the execution context of loads that are optimistically hoisted. llvm-svn: 267288
Diffstat (limited to 'llvm/lib/Transforms/Utils/BasicBlockUtils.cpp')
0 files changed, 0 insertions, 0 deletions