aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/CodeGen/TwoAddressInstructionPass.cpp
AgeCommit message (Expand)AuthorFilesLines
2014-11-19Update SetVector to rely on the underlying set's insert to return a pair<iter...David Blaikie1-1/+1
2014-11-05Improve logic that decides if its profitable to commute when some of the virt...Craig Topper1-4/+15
2014-08-04Remove the TargetMachine forwards for TargetSubtargetInfo basedEric Christopher1-3/+4
2014-04-22[Modules] Remove potential ODR violations by sinking the DEBUG_TYPEChandler Carruth1-1/+2
2014-04-14[C++11] More 'nullptr' conversion. In some cases just using a boolean check i...Craig Topper1-10/+10
2014-03-17Switch a number of loops in lib/CodeGen over to range-based for-loops, now thatOwen Anderson1-10/+6
2014-03-13Phase 2 of the great MachineRegisterInfo cleanup. This time, we're changingOwen Anderson1-6/+6
2014-03-07[C++11] Add 'override' keyword to virtual methods that override their base cl...Craig Topper1-2/+2
2014-03-02[C++11] Replace llvm::next and llvm::prior with std::next and std::prev.Benjamin Kramer1-12/+12
2013-12-17Allow MachineCSE to coalesce trivial subregister copies the same way that it ...Andrew Trick1-7/+32
2013-12-16Revert "Allow MachineCSE to coalesce trivial subregister copies the same way ...Rafael Espindola1-27/+6
2013-12-16Allow MachineCSE to coalesce trivial subregister copies the same wayAndrew Trick1-6/+27
2013-10-10Rename LiveRange to LiveInterval::SegmentMatthias Braun1-2/+2
2013-07-14Use SmallVectorImpl& instead of SmallVector to avoid repeating small vector s...Craig Topper1-1/+1
2013-05-02TiedTo flag can now be placed on implicit operands. isTwoAddrUse() should lookEvan Cheng1-5/+3
2013-04-24Register Coalescing: add a flag to disable rescheduling.Andrew Trick1-2/+8
2013-03-05Remove unused #includes.Bill Wendling1-1/+0
2013-02-24Add a use of an otherwise unused variable to remove a warning in non-AssertsCameron Zwarich1-0/+1
2013-02-24TwoAddressInstructionPass::tryInstructionTransform() only potentially returnsCameron Zwarich1-5/+4
2013-02-24TwoAddrInstructionPass::tryInstructionTransform() has a case where it callsCameron Zwarich1-5/+10
2013-02-23TargetInstrInfo::commuteInstruction() doesn't actually return a new instructionCameron Zwarich1-13/+3
2013-02-23Fix a bug with the LiveIntervals updating in the two-address pass found byCameron Zwarich1-1/+1
2013-02-23Make TwoAddressInstructionPass::sink3AddrInstruction() LiveIntervals-aware.Cameron Zwarich1-15/+34
2013-02-23Make rescheduleMIBelowKill() and rescheduleKillAboveMI() LiveIntervals-aware inCameron Zwarich1-30/+85
2013-02-21Stop relying on physical register kill flags in isKilled() in the two-addressCameron Zwarich1-3/+10
2013-02-21Make another kill check LiveIntervals-aware.Cameron Zwarich1-1/+1
2013-02-21Split part of isKilled() into a separate function for use elsewhere.Cameron Zwarich1-22/+28
2013-02-21Update isKilledAt in TwoAddressInstructionPass.cpp to use LiveIntervals whenCameron Zwarich1-4/+26
2013-02-20Only use LiveIntervals in TwoAddressInstructionPass, not a mix of LiveintervalsCameron Zwarich1-6/+4
2013-02-20Find anchoring end points for repairIntervalsInRange and repairIndexesInRangeCameron Zwarich1-12/+5
2013-02-20Fully qualify llvm::next to avoid ambiguity when building as C++11.David Blaikie1-2/+3
2013-02-20Add support to the two-address pass for updating LiveIntervals in many of theCameron Zwarich1-3/+62
2013-02-20Move the computation of the IsEarlyClobber flag into its own loop, since theCameron Zwarich1-1/+5
2013-02-20Remove verification after PHIElimination when using LiveIntervals, and move itCameron Zwarich1-0/+3
2013-01-02Move all of the header files which are involved in modelling the LLVM IRChandler Carruth1-1/+1
2012-12-03Use the new script to sort the includes of every file under lib.Chandler Carruth1-10/+10
2012-12-01Simplify REG_SEQUENCE lowering.Jakob Stoklund Olesen1-187/+69
2012-10-26Reduce indentation with early exit.Jakob Stoklund Olesen1-22/+21
2012-10-26Also make the current basic block a class member.Jakob Stoklund Olesen1-65/+53
2012-10-26Make the Processed set a class member.Jakob Stoklund Olesen1-21/+14
2012-10-26Fix whitespace and function names to be coding standardy.Jakob Stoklund Olesen1-148/+149
2012-10-26Remove the canCombineSubRegIndices() target hook.Jakob Stoklund Olesen1-129/+0
2012-09-17Stop adding <imp-def> operands when expanding REG_SEQUENCE.Jakob Stoklund Olesen1-4/+0
2012-09-04Search the whole instruction for tied operands.Jakob Stoklund Olesen1-2/+1
2012-08-22Add a getName function to MachineFunction. Use it in places that previously d...Craig Topper1-1/+1
2012-08-13Remove the TII::scheduleTwoAddrSource() hook.Jakob Stoklund Olesen1-11/+0
2012-08-09Fix a future TwoAddressInstructionPass crash.Jakob Stoklund Olesen1-1/+2
2012-08-07Skip tied operand pairs that already have the same register.Jakob Stoklund Olesen1-10/+11
2012-08-04Delete a dead variable.Jakob Stoklund Olesen1-12/+0
2012-08-03TwoAddressInstructionPass refactoring: Extract another method.Jakob Stoklund Olesen1-121/+134