aboutsummaryrefslogtreecommitdiff
path: root/lib/Transforms/Utils/Local.cpp
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2008-11-27 05:07:53 +0000
committerChris Lattner <sabre@nondot.org>2008-11-27 05:07:53 +0000
commit69e067fdd86d34cb81ccdffb82415b4f89144218 (patch)
treed46bd6e3e971ab351b6c1d2cd5fa268d3da580bd /lib/Transforms/Utils/Local.cpp
parentdc52cf48dc8f790de2634dcc5b4f6fe203f4c765 (diff)
Make jump threading substantially more powerful, in the following ways:
1. Make it fold blocks separated by an unconditional branch. This enables jump threading to see a broader scope. 2. Make jump threading able to eliminate locally redundant loads when they feed the branch condition of a block. This frequently occurs due to reg2mem running. 3. Make jump threading able to eliminate *partially redundant* loads when they feed the branch condition of a block. This is common in code with lots of loads and stores like C++ code and 255.vortex. This implements thread-loads.ll and rdar://6402033. Per the fixme's, several pieces of this should be moved into Transforms/Utils. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60148 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Transforms/Utils/Local.cpp')
0 files changed, 0 insertions, 0 deletions