aboutsummaryrefslogtreecommitdiffstats
path: root/lib/CodeGen/TwoAddressInstructionPass.cpp
Commit message (Expand)AuthorAgeFilesLines
* Properly constrain register classes in 2-addr.Jakob Stoklund Olesen2012-05-201-0/+6
* Teach two-address pass to update the "source" map so it doesn't perform aEvan Cheng2012-05-181-1/+7
* Add an MF argument to TRI::getPointerRegClass() and TII::getRegClass().Jakob Stoklund Olesen2012-05-071-1/+1
* Fix two-address pass's aggressive instruction commuting heuristics. It's meantEvan Cheng2012-05-031-15/+16
* Added TargetRegisterInfo::getAllocatableClass.Andrew Trick2012-05-031-1/+2
* Patch r153892 for PR11861 apparently broke an external project (see PR12493).Lang Hames2012-04-091-16/+17
* REG_SEQUENCE expansion to COPY instructions wasn't taking account of sub regi...Pete Cooper2012-04-041-1/+2
* Remove spurious debug output.Jakob Stoklund Olesen2012-04-041-1/+0
* During two-address lowering, rescheduling an instruction does not untieLang Hames2012-04-021-2/+2
* RegAlloc superpass: includes phi elimination, coalescing, and scheduling.Andrew Trick2012-02-101-1/+0
* whitespaceAndrew Trick2012-02-031-8/+8
* Set correct <def,undef> flags when lowering REG_SEQUENCE.Jakob Stoklund Olesen2012-01-241-0/+46
* Preserve <def,undef> flags in CoalesceExtSubRegs.Jakob Stoklund Olesen2012-01-241-3/+7
* Fix ISD::REG_SEQUENCE to accept physical registers and change TwoAddressInstr...Pete Cooper2012-01-181-9/+12
* Add bundle aware API for querying instruction properties and switch the codeEvan Cheng2011-12-071-18/+13
* Simplify code. No functionality change.Benjamin Kramer2011-12-031-2/+1
* Disable expensive two-address optimizations at -O0. rdar://10453055Evan Cheng2011-11-161-0/+8
* Disable the assertion again. Looks like fastisel is still generating bad kill...Evan Cheng2011-11-161-1/+2
* Revert r144568 now that r144730 has fixed the fast-isel kill marker bug.Evan Cheng2011-11-161-2/+1
* If the 2addr instruction has other kills, don't move it below any other uses ...Evan Cheng2011-11-161-2/+7
* RescheduleKillAboveMI() must backtrack to before the rescheduled DBG_VALUE in...Evan Cheng2011-11-161-1/+1
* Process all uses first before defs to accurately capture register liveness. r...Evan Cheng2011-11-161-7/+13
* Set SeenStore to true to prevent loads from being moved; also eliminates a no...Evan Cheng2011-11-151-2/+2
* Avoid dereferencing off the beginning of lists.Evan Cheng2011-11-141-7/+4
* At -O0, multiple uses of a virtual registers in the same BB are being markedEvan Cheng2011-11-141-1/+2
* Teach two-address pass to re-schedule two-address instructions (or the killEvan Cheng2011-11-141-19/+356
* PR10998: It is not legal to sink an instruction past the terminator of a bloc...Eli Friedman2011-09-231-1/+9
* Add an isSSA() flag to MachineRegisterInfo.Jakob Stoklund Olesen2011-07-291-0/+3
* - Rename TargetInstrDesc, TargetOperandInfo to MCInstrDesc and MCOperandInfo andEvan Cheng2011-06-281-16/+17
* More refactoring. Move getRegClass from TargetOperandInfo to TargetInstrInfo.Evan Cheng2011-06-271-1/+1
* Simplify code. No change in functionality.Benjamin Kramer2011-06-181-6/+1
* Fix an issue where the two-address conversion pass incorrectly rewrites untiedCameron Zwarich2011-06-071-9/+16
* Catch more cases where 2-address pass should 3-addressify instructions. rdar:...Evan Cheng2011-03-021-49/+70
* After 3-addressifying a two-address instruction, update the register maps; ad...Evan Cheng2011-02-101-4/+9
* Simplify a bunch of isVirtualRegister() and isPhysicalRegister() logic.Jakob Stoklund Olesen2011-01-101-1/+1
* Shrink a BitVector that didn't mean to store bits for all physical registers.Jakob Stoklund Olesen2011-01-091-6/+4
* Do not model all INLINEASM instructions as having unmodelled side effects.Evan Cheng2011-01-071-1/+1
* StrongPHIElimination will never run before TwoAddressInstructionPass.Cameron Zwarich2010-12-191-1/+0
* Remove some checks for StrongPHIElim. These checks make it impossible to use anCameron Zwarich2010-12-191-4/+2
* Fix crash compiling a QQQQ REG_SEQUENCE for a Neon vld3_lane operation.Bob Wilson2010-12-171-2/+5
* Fix a minor bug in two-address pass. It was missing a commute opportunity.Evan Cheng2010-12-141-1/+2
* Remove some variables that are never really usedDuncan Sands2010-10-211-1/+0
* Get rid of static constructors for pass registration. Instead, every pass ex...Owen Anderson2010-10-191-1/+3
* Begin adding static dependence information to passes, which will allow us toOwen Anderson2010-10-121-1/+4
* Now with fewer extraneous semicolons!Owen Anderson2010-10-071-1/+1
* Now that PassInfo and Pass::ID have been separated, move the rest of the pass...Owen Anderson2010-08-231-2/+2
* A REG_SEQUENCE instruction may use the same register twice.Jakob Stoklund Olesen2010-08-091-1/+11
* Reapply r110396, with fixes to appease the Linux buildbot gods.Owen Anderson2010-08-061-2/+2
* Revert r110396 to fix buildbots.Owen Anderson2010-08-061-2/+2
* Don't use PassInfo* as a type identifier for passes. Instead, use the addres...Owen Anderson2010-08-051-2/+2