llvm-6502/lib/Transforms
Chandler Carruth 0afa33115c Simplify the PHI node operand rewriting.
Previously, the code would scan the PHI nodes and build up a small
setvector of candidate value pairs in phi nodes to go and rewrite. Once
certain the rewrite could be performed, the code walks the set, and for
each one re-scans the entire PHI node list looking for nodes to rewrite
operands.

Instead, scan the PHI nodes once to check for hazards, and then scan it
a second time to rewrite the operands to selects. No set vector, and
a max of two scans.

The only downside is that we might form identical selects, but
instcombine or anything else should fold those easily, and it seems
unlikely to happen often.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173337 91177308-0d34-0410-b5e6-96231b3b80d8
2013-01-24 10:40:51 +00:00
..
Hello
InstCombine Remove trailing whitespace. 2013-01-24 05:22:40 +00:00
Instrumentation [asan] adaptive redzones for globals (the larger the global the larger is the redzone) 2013-01-24 10:35:40 +00:00
IPO Add the IR attribute 'sspstrong'. 2013-01-23 06:41:41 +00:00
Scalar Fixed typo. 2013-01-22 21:53:43 +00:00
Utils Simplify the PHI node operand rewriting. 2013-01-24 10:40:51 +00:00
Vectorize Add support for reverse pointer induction variables. These are loops that contain pointers that count backwards. 2013-01-23 01:35:00 +00:00
CMakeLists.txt
LLVMBuild.txt
Makefile