aboutsummaryrefslogtreecommitdiffstats
path: root/lib/CodeGen/TwoAddressInstructionPass.cpp
Commit message (Expand)AuthorAgeFilesLines
* 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
* Remove many calls to TII::isMoveInstr. Targets should be producing COPY anyway.Jakob Stoklund Olesen2010-07-161-19/+11
* Replace copyRegToReg with COPY everywhere in lib/CodeGen except for FastISel.Jakob Stoklund Olesen2010-07-101-20/+12
* Only collect subreg extracting copies for later coalescing.Jakob Stoklund Olesen2010-07-101-1/+1
* Emit COPY instructions instead of using copyRegToReg in InstrEmitter,Jakob Stoklund Olesen2010-07-101-4/+2
* Convert EXTRACT_SUBREG to COPY when emitting machine instrs.Jakob Stoklund Olesen2010-07-081-15/+11
* Remove references to INSERT_SUBREG after de-SSA.Jakob Stoklund Olesen2010-07-081-19/+5
* Revert "Remove references to INSERT_SUBREG after de-SSA" r107725.Jakob Stoklund Olesen2010-07-071-5/+19
* Remove references to INSERT_SUBREG after de-SSAJakob Stoklund Olesen2010-07-061-19/+5
* Convert INSERT_SUBREG to COPY in TwoAddressInstructionPass.Jakob Stoklund Olesen2010-07-061-0/+13
* Detect and handle COPY in many places.Jakob Stoklund Olesen2010-07-031-1/+1
* - Two-address pass should not assume unfolding is always successful.Evan Cheng2010-07-021-8/+6
* When unfolding a load, avoid assuming which instruction thatDan Gohman2010-06-221-4/+18
* Fix the new load-unfolding code to update LiveVariable's dead flags,Dan Gohman2010-06-221-2/+8
* Teach two-address lowering how to unfold a load to open up commutingDan Gohman2010-06-211-0/+84
* Only run CoalesceExtSubRegs when we can expect LiveIntervalAnalysis to clean upJakob Stoklund Olesen2010-06-181-2/+5
* Add some missing checks for the case where the extract_subregs areBob Wilson2010-06-151-22/+23
* Generalize the pre-coalescing of extract_subregs feeding reg_sequences,Bob Wilson2010-06-151-33/+83
* Allow target to place 2-address pass inserted copies in better spots. Thumb2 ...Evan Cheng2010-06-091-1/+6
* Fix a mistake in my previous change r105437: don't access operand 2 and assumeBob Wilson2010-06-071-3/+2
* Add some missing checks in TwoAddressInstructionPass::CoalesceExtSubRegs.Bob Wilson2010-06-031-4/+21
* Slightly change the meaning of the reMaterialize target hook when the originalJakob Stoklund Olesen2010-06-021-1/+1
* Rename canCombinedSubRegIndex method to something more grammatically correctBob Wilson2010-06-021-2/+2
* Fix an obvious mistake: don't change the operands until all of them have beenBob Wilson2010-06-021-2/+0
* Handle composed subreg indices when processing REQ_SEQUENCE instructions.Jakob Stoklund Olesen2010-05-291-5/+4
* - Change MachineInstr::findRegisterDefOperandIdx so it can also look for defsEvan Cheng2010-05-211-1/+1
* TwoAddressInstructionPass doesn't really know how to merge live intervals whenJakob Stoklund Olesen2010-05-191-1/+6
* Fix PR7175. Insert copies of a REG_SEQUENCE source if it is used by other REG...Evan Cheng2010-05-171-1/+15
* Fix PR7156. If the sources of a REG_SEQUENCE are all IMPLICIT_DEF's. Replace ...Evan Cheng2010-05-171-2/+11
* Careful with reg_sequence coalescing to not to overwrite sub-register indices.Evan Cheng2010-05-171-40/+77
* Teach two-address pass to do some coalescing while eliminating REG_SEQUENCEEvan Cheng2010-05-141-0/+49
* If REG_SEQUENCE source is livein, copy it first. Also, update livevariables i...Evan Cheng2010-05-131-4/+23
* Code clean up.Evan Cheng2010-05-121-1/+2