summaryrefslogtreecommitdiff
path: root/include
Commit message (Collapse)AuthorAge
* rotate CallInst operandsGabor Greif2010-07-13
| | | | | | | | | | | | | | | | | | | with this commit the callee moves to the end of the operand array (from the start) and the call arguments now start at index 0 (formerly 1) this ordering is now consistent with InvokeInst this commit only flips the switch, functionally it is equivalent to r101465 I intend to commit several cleanups after a few days of soak period git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108240 91177308-0d34-0410-b5e6-96231b3b80d8
* use a typedef instead of its expansion, patch by Michael SpencerChris Lattner2010-07-13
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108229 91177308-0d34-0410-b5e6-96231b3b80d8
* 80-columnsEric Christopher2010-07-13
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108228 91177308-0d34-0410-b5e6-96231b3b80d8
* Bring ELF64 on par with ELF32, add a few magic constants and support ".dynamic"Stephen Wilson2010-07-13
| | | | | | | | section entries. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108221 91177308-0d34-0410-b5e6-96231b3b80d8
* Simple format/style fixes.Stephen Wilson2010-07-12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108203 91177308-0d34-0410-b5e6-96231b3b80d8
* Test commit.Stephen Wilson2010-07-12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108197 91177308-0d34-0410-b5e6-96231b3b80d8
* Add convenience method FoldingSetImpl::InsertNode(Node *N) that asserts if ↵Argyrios Kyrtzidis2010-07-12
| | | | | | the node is already inserted. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108192 91177308-0d34-0410-b5e6-96231b3b80d8
* MC/AsmParser: Move .section parsing to Darwin specific parser.Daniel Dunbar2010-07-12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108190 91177308-0d34-0410-b5e6-96231b3b80d8
* MC/AsmLexer: Raise LexUntilEndOfStatement to MCAsmLexer.Daniel Dunbar2010-07-12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108189 91177308-0d34-0410-b5e6-96231b3b80d8
* getOrInsertLeaderValue cannot be const because it calls insert.Bill Wendling2010-07-12
| | | | | | | Patch by Xi Wang! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108188 91177308-0d34-0410-b5e6-96231b3b80d8
* MC/AsmParser: Move special section directive parsing to Darwin specific parser.Daniel Dunbar2010-07-12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108187 91177308-0d34-0410-b5e6-96231b3b80d8
* MC/AsmParser: Inline AsmParser::CreateSymbol into callers.Daniel Dunbar2010-07-12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108183 91177308-0d34-0410-b5e6-96231b3b80d8
* MC/AsmParser: Move .tbss and .zerofill parsing to Darwin specific parser.Daniel Dunbar2010-07-12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108180 91177308-0d34-0410-b5e6-96231b3b80d8
* MC/AsmParser: Move .desc parsing to Darwin specific parser.Daniel Dunbar2010-07-12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108179 91177308-0d34-0410-b5e6-96231b3b80d8
* MC/AsmParser: Move .lsym parsing to Darwin specific parser.Daniel Dunbar2010-07-12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108176 91177308-0d34-0410-b5e6-96231b3b80d8
* MC/AsmParser: Move some misc. Darwin directive handling to DarwinAsmParser.Daniel Dunbar2010-07-12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108174 91177308-0d34-0410-b5e6-96231b3b80d8
* MCAsmParser: Add getSourceManager().Daniel Dunbar2010-07-12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108171 91177308-0d34-0410-b5e6-96231b3b80d8
* MC/AsmParser: Add a DarwinAsmParser extension.Daniel Dunbar2010-07-12
| | | | | | | - Currently initialization is a bit of a hack, but harmless. We need to rework various parts of target initialization to clean this up. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108165 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix a typo and fit in 80 columns. Found by Bob Wilson.Rafael Espindola2010-07-12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108164 91177308-0d34-0410-b5e6-96231b3b80d8
* MCAsmParser: Pull some directive handling out into a helper class, and changeDaniel Dunbar2010-07-12
| | | | | | DirectiveMap to be based on MCAsmParserExtension. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108161 91177308-0d34-0410-b5e6-96231b3b80d8
* MC: Add MCAsmParserExtension, a base class for all the target/object specificDaniel Dunbar2010-07-12
| | | | | | classes which want to extend the basic asm parser. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108158 91177308-0d34-0410-b5e6-96231b3b80d8
* MC: Move AsmParser::TokError to MCAsmParser().Daniel Dunbar2010-07-12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108155 91177308-0d34-0410-b5e6-96231b3b80d8
* MC: Move getLoc() to MCAsmLexer().Daniel Dunbar2010-07-12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108154 91177308-0d34-0410-b5e6-96231b3b80d8
* Convert some tab stops into spaces.Duncan Sands2010-07-12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108130 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove tab characters and 80-col.Eric Christopher2010-07-12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108127 91177308-0d34-0410-b5e6-96231b3b80d8
* 80 columns.Eric Christopher2010-07-12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108126 91177308-0d34-0410-b5e6-96231b3b80d8
* Path::isRootDirectory is unimplemented on Unix and not used,Chris Lattner2010-07-12
| | | | | | | remove it, fixing PR6909. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108125 91177308-0d34-0410-b5e6-96231b3b80d8
* Convert the last use of getPhysicalRegisterRegClass and remove it.Rafael Espindola2010-07-12
| | | | | | | | | | | | AggressiveAntiDepBreaker should not be using getPhysicalRegisterRegClass. An instruction might be using a register that can only be replaced with one from a subclass of getPhysicalRegisterRegClass. With this patch we use getMinimalPhysRegClass. This is correct, but conservative. We should check the uses of the register and select the largest register class that can be used in all of them. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108122 91177308-0d34-0410-b5e6-96231b3b80d8
* make the prototypes for CreateMalloc and CreateFree more consistent. PatchChris Lattner2010-07-12
| | | | | | | by Hans Vandierendonck from PR7605 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108116 91177308-0d34-0410-b5e6-96231b3b80d8
* introduce WinCOFFObjectWriter, patch by Michael Spencer!Chris Lattner2010-07-11
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108103 91177308-0d34-0410-b5e6-96231b3b80d8
* introduce WinCOFFStreamer.cpp, patch by Michael Spencer!Chris Lattner2010-07-11
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108102 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove TargetInstrInfo::copyRegToReg entirely.Jakob Stoklund Olesen2010-07-11
| | | | | | | Targets must now implement TargetInstrInfo::copyPhysReg instead. There is no longer a default implementation forwarding to copyRegToReg. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108095 91177308-0d34-0410-b5e6-96231b3b80d8
* Make getPhysicalRegisterRegClass non-virtual. Should be able to remove it soon.Rafael Espindola2010-07-11
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108094 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove copyRegToReg from TargetInstrInfo so it is not longer accesible.Jakob Stoklund Olesen2010-07-11
| | | | | | | | | Use a COPY instruction instead for register copies, or TII::copyPhysReg() after COPY instructions are lowered. Targets should implement copyPhysReg instead of copyRegToReg. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108075 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix va_arg for doubles. With this patch VAARG nodes always contain theRafael Espindola2010-07-11
| | | | | | | | | | | | | | | correct alignment information, which simplifies ExpandRes_VAARG a bit. The patch introduces a new alignment information to TargetLoweringInfo. This is needed since the two natural candidates cannot be used: * The 's' in target data: If this is set to the minimal alignment of any argument, getCallFrameTypeAlignment would return 4 for doubles on ARM for example. * The getTransientStackAlignment method. It is possible for an architecture to have argument less aligned than what we maintain the stack pointer. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108072 91177308-0d34-0410-b5e6-96231b3b80d8
* Reapply bottom-up fast-isel, with several fixes for x86-32:Dan Gohman2010-07-10
| | | | | | | | | | - Check getBytesToPopOnReturn(). - Eschew ST0 and ST1 for return values. - Fix the PIC base register initialization so that it doesn't ever fail to end up the top of the entry block. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108039 91177308-0d34-0410-b5e6-96231b3b80d8
* Automatically fold COPY instructions into stack load/store.Jakob Stoklund Olesen2010-07-09
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@108012 91177308-0d34-0410-b5e6-96231b3b80d8
* Change TII::foldMemoryOperand API to require the machine instruction to beJakob Stoklund Olesen2010-07-09
| | | | | | | | | | | | | | inserted in a MBB, and return an already inserted MI. This target API change is necessary to allow foldMemoryOperand to call storeToStackSlot and loadFromStackSlot when folding a COPY to a stack slot reference in a target independent way. The foldMemoryOperandImpl hook is going to change in the same way, but I'll wait until COPY folding is actually implemented. Most targets only fold copies and won't need to specialize this hook at all. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107991 91177308-0d34-0410-b5e6-96231b3b80d8
* --- Reverse-merging r107947 into '.':Bob Wilson2010-07-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | U utils/TableGen/FastISelEmitter.cpp --- Reverse-merging r107943 into '.': U test/CodeGen/X86/fast-isel.ll U test/CodeGen/X86/fast-isel-loads.ll U include/llvm/Target/TargetLowering.h U include/llvm/Support/PassNameParser.h U include/llvm/CodeGen/FunctionLoweringInfo.h U include/llvm/CodeGen/CallingConvLower.h U include/llvm/CodeGen/FastISel.h U include/llvm/CodeGen/SelectionDAGISel.h U lib/CodeGen/LLVMTargetMachine.cpp U lib/CodeGen/CallingConvLower.cpp U lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp U lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp U lib/CodeGen/SelectionDAG/FastISel.cpp U lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp U lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp U lib/CodeGen/SelectionDAG/InstrEmitter.cpp U lib/CodeGen/SelectionDAG/TargetLowering.cpp U lib/Target/XCore/XCoreISelLowering.cpp U lib/Target/XCore/XCoreISelLowering.h U lib/Target/X86/X86ISelLowering.cpp U lib/Target/X86/X86FastISel.cpp U lib/Target/X86/X86ISelLowering.h git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107987 91177308-0d34-0410-b5e6-96231b3b80d8
* fix clang selfhost issue (shadowing)Gabor Greif2010-07-09
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107970 91177308-0d34-0410-b5e6-96231b3b80d8
* refactor type expressions and cache operator*'s resultGabor Greif2010-07-09
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107964 91177308-0d34-0410-b5e6-96231b3b80d8
* two more cases of reuse result of operator*, found by inspectionGabor Greif2010-07-09
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107961 91177308-0d34-0410-b5e6-96231b3b80d8
* another case of reuse result of operator*, it is expensive to recomputeGabor Greif2010-07-09
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107960 91177308-0d34-0410-b5e6-96231b3b80d8
* reuse result of operator*, it is expensive to recomputeGabor Greif2010-07-09
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107959 91177308-0d34-0410-b5e6-96231b3b80d8
* Added a support for inserting new MBBs into the numbering.Lang Hames2010-07-09
| | | | | | | | | | Unlike insertMachineInstrInMaps this does not guarantee live intervals will remain correct. The caller will need to manually update intervals to account for the changes made to the CFG. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107958 91177308-0d34-0410-b5e6-96231b3b80d8
* Re-apply bottom-up fast-isel, with fixes. Be very careful to avoid emittingDan Gohman2010-07-09
| | | | | | | a DBG_VALUE after a terminator, or emitting any instructions before an EH_LABEL. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107943 91177308-0d34-0410-b5e6-96231b3b80d8
* Reverting r107918 and r107919. Radar 8063111.Stuart Hastings2010-07-08
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107930 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix decl/def debug info for template functions. Radar 8063111.Stuart Hastings2010-07-08
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107919 91177308-0d34-0410-b5e6-96231b3b80d8
* Revert some unneeded parts of the change in r107886 for theKevin Enderby2010-07-08
| | | | | | | | | | .weak_def_can_be_hidden directive. Chris pointed out that the MCAsmInfo.h/.cpp chunks aren't needed for this until the compiler starts generating these. And when that happens it will be more convenient for it to be a bool than a const char*. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107906 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement X86InstrInfo::copyPhysRegJakob Stoklund Olesen2010-07-08
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@107898 91177308-0d34-0410-b5e6-96231b3b80d8