aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Transforms/Utils/LoopUtils.cpp
diff options
context:
space:
mode:
authorMatthias Braun <matze@braunis.de>2016-05-10 04:51:14 +0000
committerMatthias Braun <matze@braunis.de>2016-05-10 04:51:14 +0000
commit8d6e57b2166f93d10d11dcae10e8a8c349a998d5 (patch)
tree72137b69c8cb5f5f9ae78952c953328c9b8a7226 /llvm/lib/Transforms/Utils/LoopUtils.cpp
parent9c7e4dea1fb3235e83d3f411c2f2d99d50122cd0 (diff)
downloadllvm-8d6e57b2166f93d10d11dcae10e8a8c349a998d5.zip
llvm-8d6e57b2166f93d10d11dcae10e8a8c349a998d5.tar.gz
llvm-8d6e57b2166f93d10d11dcae10e8a8c349a998d5.tar.bz2
LiveIntervalAnalysis: Rework constructMainRangeFromSubranges()
We now use LiveRangeCalc::extendToUses() instead of a specially designed algorithm in constructMainRangeFromSubranges(): - The original motivation for constructMainRangeFromSubranges() were differences between the main liverange and subranges because of hidden dead definitions. This case however cannot happen anymore with the DetectDeadLaneMasks pass in place. - It simplifies the code. - This fixes a longstanding bug where we did not properly create new SSA values on merging control flow (the MachineVerifier missed most of these cases). - Move constructMainRangeFromSubranges() to LiveIntervalAnalysis and LiveRangeCalc to better match the implementation/available helper functions. llvm-svn: 269016
Diffstat (limited to 'llvm/lib/Transforms/Utils/LoopUtils.cpp')
0 files changed, 0 insertions, 0 deletions