summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen/OptimizePHIs.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Fix batch of converting RegisterPass<> to INTIALIZE_PASS().Owen Anderson2010-07-211-2/+2
| | | | llvm-svn: 109045
* Remove many calls to TII::isMoveInstr. Targets should be producing COPY anyway.Jakob Stoklund Olesen2010-07-161-10/+4
| | | | | | TII::isMoveInstr is going tobe completely removed. llvm-svn: 108507
* Detect and handle COPY in many places.Jakob Stoklund Olesen2010-07-031-0/+5
| | | | | | | This code is transitional, it will soon be possible to eliminate isExtractSubreg, isInsertSubreg, and isMoveInstr in most places. llvm-svn: 107547
* Besides removing phi cycles that reduce to a single value, also remove deadBob Wilson2010-02-131-20/+68
| | | | | | | | phi cycles. Adjust a few tests to keep dead instructions from being optimized away. This (together with my previous change for phi cycles) fixes Apple radar 7627077. llvm-svn: 96057
* Add a new pass on machine instructions to optimize away PHI cycles that Bob Wilson2010-02-121-0/+141
reduce down to a single value. InstCombine already does this transformation but DAG legalization may introduce new opportunities. This has turned out to be important for ARM where 64-bit values are split up during type legalization: InstCombine is not able to remove the PHI cycles on the 64-bit values but the separate 32-bit values can be optimized. I measured the compile time impact of this (running llc on 176.gcc) and it was not significant. llvm-svn: 95951
OpenPOWER on IntegriCloud