Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | - Eliminate MCCodeEmitter's dependency on TargetMachine. It now uses MCInstrInfo | Evan Cheng | 2011-07-11 | 1 | -0/+12 | |
| | | | | | | | | | | | | and MCSubtargetInfo. - Added methods to update subtarget features (used when targets automatically detect subtarget features or switch modes). - Teach X86Subtarget to update MCSubtargetInfo features bits since the MCSubtargetInfo layer can be shared with other modules. - These fixes .code 16 / .code 32 support since mode switch is updated in MCSubtargetInfo so MC code emitter can do the right thing. llvm-svn: 134884 | |||||
* | Hide the call to InitMCInstrInfo into tblgen generated ctor. | Evan Cheng | 2011-07-01 | 1 | -2/+2 | |
| | | | | llvm-svn: 134244 | |||||
* | Move CallFrameSetupOpcode and CallFrameDestroyOpcode to TargetInstrInfo. | Evan Cheng | 2011-06-28 | 1 | -1/+2 | |
| | | | | llvm-svn: 134030 | |||||
* | Merge XXXGenRegisterNames.inc into XXXGenRegisterInfo.inc | Evan Cheng | 2011-06-28 | 1 | -1/+4 | |
| | | | | llvm-svn: 134024 | |||||
* | - Rename TargetInstrDesc, TargetOperandInfo to MCInstrDesc and MCOperandInfo and | Evan Cheng | 2011-06-28 | 1 | -6/+6 | |
| | | | | | | | | sink them into MC layer. - Added MCInstrInfo, which captures the tablegen generated static data. Chang TargetInstrInfo so it's based off MCInstrInfo. llvm-svn: 134021 | |||||
* | Move callee-saved regs spills / reloads to TFI | Anton Korobeynikov | 2010-11-27 | 1 | -150/+0 | |
| | | | | llvm-svn: 120228 | |||||
* | Move hasFP() and few related hooks to TargetFrameInfo. | Anton Korobeynikov | 2010-11-18 | 1 | -2/+2 | |
| | | | | llvm-svn: 119740 | |||||
* | Remove the isMoveInstr() hook. | Jakob Stoklund Olesen | 2010-07-16 | 1 | -25/+0 | |
| | | | | llvm-svn: 108567 | |||||
* | Remove redundant branch. Thanks, Anton! | Jakob Stoklund Olesen | 2010-07-11 | 1 | -2/+0 | |
| | | | | llvm-svn: 108097 | |||||
* | Replace copyRegToReg with copyPhysReg for SystemZ. | Jakob Stoklund Olesen | 2010-07-11 | 1 | -53/+24 | |
| | | | | llvm-svn: 108092 | |||||
* | Add a DebugLoc parameter to TargetInstrInfo::InsertBranch(). This | Stuart Hastings | 2010-06-17 | 1 | -3/+2 | |
| | | | | | | | | | | | | addresses a longstanding deficiency noted in many FIXMEs scattered across all the targets. This effectively moves the problem up one level, replacing eleven FIXMEs in the targets with eight FIXMEs in CodeGen, plus one path through FastISel where we actually supply a DebugLoc, fixing Radar 7421831. llvm-svn: 106243 | |||||
* | Remove the TargetRegisterClass member from CalleeSavedInfo | Rafael Espindola | 2010-06-02 | 1 | -9/+7 | |
| | | | | llvm-svn: 105344 | |||||
* | Implement @llvm.returnaddress. rdar://8015977. | Evan Cheng | 2010-05-22 | 1 | -2/+4 | |
| | | | | llvm-svn: 104421 | |||||
* | Add a DebugLoc argument to TargetInstrInfo::copyRegToReg, so that it | Dan Gohman | 2010-05-06 | 1 | -3/+2 | |
| | | | | | | doesn't have to guess. llvm-svn: 103194 | |||||
* | Add argument TargetRegisterInfo to loadRegFromStackSlot and storeRegToStackSlot. | Evan Cheng | 2010-05-06 | 1 | -4/+7 | |
| | | | | llvm-svn: 103193 | |||||
* | use DebugLoc default ctor instead of DebugLoc::getUnknownLoc() | Chris Lattner | 2010-04-02 | 1 | -9/+9 | |
| | | | | llvm-svn: 100214 | |||||
* | Teach AnalyzeBranch, RemoveBranch and the branch | Dale Johannesen | 2010-04-02 | 1 | -0/+4 | |
| | | | | | | | folder to be tolerant of debug info following the branch(es) at the end of a block. llvm-svn: 100168 | |||||
* | Remove the target hook TargetInstrInfo::BlockHasNoFallThrough in favor of | Dan Gohman | 2009-12-05 | 1 | -12/+0 | |
| | | | | | | | MachineBasicBlock::canFallThrough(), which is target-independent and more thorough. llvm-svn: 90634 | |||||
* | improve portability to avoid conflicting with std::next in c++'0x. | Chris Lattner | 2009-12-03 | 1 | -2/+2 | |
| | | | | | | Patch by Howard Hinnant! llvm-svn: 90365 | |||||
* | add some missing #includes | Chris Lattner | 2009-11-07 | 1 | -1/+1 | |
| | | | | llvm-svn: 86367 | |||||
* | Replace TargetInstrInfo::isInvariantLoad and its target-specific | Dan Gohman | 2009-10-07 | 1 | -24/+0 | |
| | | | | | | | | | implementations with a new MachineInstr::isInvariantLoad, which uses MachineMemOperands and is target-independent. This brings MachineLICM and other functionality to targets which previously lacked an isInvariantLoad implementation. llvm-svn: 83475 | |||||
* | Turn few asserts into errors / unreachable's | Anton Korobeynikov | 2009-07-18 | 1 | -5/+5 | |
| | | | | llvm-svn: 76313 | |||||
* | Avoid a compiler warning when assertions are turned off. | Duncan Sands | 2009-07-17 | 1 | -3/+2 | |
| | | | | llvm-svn: 76176 | |||||
* | Provide crazy pseudos for regpairs spills / reloads | Anton Korobeynikov | 2009-07-16 | 1 | -1/+17 | |
| | | | | llvm-svn: 76060 | |||||
* | Handle long-disp stuff more consistently | Anton Korobeynikov | 2009-07-16 | 1 | -1/+2 | |
| | | | | llvm-svn: 76059 | |||||
* | Another predicate routine | Anton Korobeynikov | 2009-07-16 | 1 | -0/+30 | |
| | | | | llvm-svn: 76057 | |||||
* | More helpers | Anton Korobeynikov | 2009-07-16 | 1 | -0/+64 | |
| | | | | llvm-svn: 76056 | |||||
* | Add bunch of branch folding stuff | Anton Korobeynikov | 2009-07-16 | 1 | -0/+174 | |
| | | | | llvm-svn: 76055 | |||||
* | Add missed opcodes to short => long displacement conversion | Anton Korobeynikov | 2009-07-16 | 1 | -0/+2 | |
| | | | | llvm-svn: 76054 | |||||
* | Cleanup | Anton Korobeynikov | 2009-07-16 | 1 | -91/+29 | |
| | | | | llvm-svn: 76053 | |||||
* | Add missed condbranch opcodes | Anton Korobeynikov | 2009-07-16 | 1 | -5/+29 | |
| | | | | llvm-svn: 76043 | |||||
* | Handle FP callee-saved regs | Anton Korobeynikov | 2009-07-16 | 1 | -46/+78 | |
| | | | | llvm-svn: 76029 | |||||
* | Implement FP regs spills / restores | Anton Korobeynikov | 2009-07-16 | 1 | -0/+14 | |
| | | | | llvm-svn: 76024 | |||||
* | Add bunch of FP instructions | Anton Korobeynikov | 2009-07-16 | 1 | -0/+6 | |
| | | | | llvm-svn: 76019 | |||||
* | Another attempt to fix prologue emission | Anton Korobeynikov | 2009-07-16 | 1 | -2/+2 | |
| | | | | llvm-svn: 76007 | |||||
* | Add proper register aliases | Anton Korobeynikov | 2009-07-16 | 1 | -2/+2 | |
| | | | | llvm-svn: 75999 | |||||
* | Consolidate reg-imm / reg-reg-imm address mode selection logic in one place. | Anton Korobeynikov | 2009-07-16 | 1 | -0/+3 | |
| | | | | llvm-svn: 75990 | |||||
* | Fix fallout from 12-bit stuff landing: decide whether 20 bit displacements ↵ | Anton Korobeynikov | 2009-07-16 | 1 | -0/+44 | |
| | | | | | | are needed during elimination of frame indexes. llvm-svn: 75989 | |||||
* | Provide hooks for spilling / restoring stuff | Anton Korobeynikov | 2009-07-16 | 1 | -2/+30 | |
| | | | | llvm-svn: 75969 | |||||
* | Implement InsertBranch() hook | Anton Korobeynikov | 2009-07-16 | 1 | -2/+25 | |
| | | | | llvm-svn: 75966 | |||||
* | Provide "wide" muls and divs/rems | Anton Korobeynikov | 2009-07-16 | 1 | -4/+8 | |
| | | | | llvm-svn: 75958 | |||||
* | SELECT_CC lowering | Anton Korobeynikov | 2009-07-16 | 1 | -0/+29 | |
| | | | | llvm-svn: 75948 | |||||
* | Emit callee-saved regs spills / restores | Anton Korobeynikov | 2009-07-16 | 1 | -3/+100 | |
| | | | | llvm-svn: 75943 | |||||
* | Some preliminary call lowering | Anton Korobeynikov | 2009-07-16 | 1 | -2/+9 | |
| | | | | llvm-svn: 75941 | |||||
* | Add shifts and reg-imm address matching | Anton Korobeynikov | 2009-07-16 | 1 | -2/+18 | |
| | | | | llvm-svn: 75927 | |||||
* | Add bunch of 32-bit patterns... Uffff :) | Anton Korobeynikov | 2009-07-16 | 1 | -2/+14 | |
| | | | | llvm-svn: 75926 | |||||
* | Add simple reg-reg and reg-imm moves | Anton Korobeynikov | 2009-07-16 | 1 | -7/+35 | |
| | | | | llvm-svn: 75912 | |||||
* | Let's start another backend :) | Anton Korobeynikov | 2009-07-16 | 1 | -0/+81 | |
llvm-svn: 75909 |