summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen/MachineFunction.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Revert r164308 to fix buildbots.Bill Wendling2012-09-201-2/+2
| | | | llvm-svn: 164309
* Make the 'get*AlignmentFromAttr' functions into member functions within the ↵Bill Wendling2012-09-201-2/+2
| | | | | | Attributes class. llvm-svn: 164308
* Release build: guard dump functions withManman Ren2012-09-111-4/+4
| | | | | | | | "#if !defined(NDEBUG) || defined(LLVM_ENABLE_DUMP)" No functional change. Update r163339. llvm-svn: 163653
* Release build: guard dump functions with "ifndef NDEBUG"Manman Ren2012-09-061-0/+8
| | | | | | No functional change. llvm-svn: 163339
* Add a new optimization pass: Stack Coloring, that merges disjoint static ↵Nadav Rotem2012-09-061-1/+3
| | | | | | | | allocations (allocas). Allocas are known to be disjoint if they are marked by disjoint lifetime markers (@llvm.lifetime.XXX intrinsics). llvm-svn: 163299
* Stop casting away const qualifier needlessly.Roman Divacky2012-09-051-1/+1
| | | | llvm-svn: 163258
* Tidy up a few more uses of MF.getFunction()->getName().David Blaikie2012-08-221-4/+4
| | | | | | | | Based on CR feedback from r162301 and Craig Topper's refactoring in r162347 here are a few other places that could use the same API (& in one instance drop a Function.h dependency). llvm-svn: 162367
* Add a getName function to MachineFunction. Use it in places that previously ↵Craig Topper2012-08-221-1/+6
| | | | | | did getFunction()->getName(). Remove includes of Function.h that are no longer needed. llvm-svn: 162347
* Move lib/Analysis/DebugInfo.cpp to lib/VMCore/DebugInfo.cpp andBill Wendling2012-06-281-1/+1
| | | | | | | | | include/llvm/Analysis/DebugInfo.h to include/llvm/DebugInfo.h. The reasoning is because the DebugInfo module is simply an interface to the debug info MDNodes and has nothing to do with analysis. llvm-svn: 159312
* Tidy up.Chad Rosier2012-06-191-17/+20
| | | | llvm-svn: 158762
* Add an ensureMaxAlignment() function to MachineFrameInfo (analogous toChad Rosier2012-06-191-1/+1
| | | | | | | | | ensureAlignment() in MachineFunction). Also, drop setMaxAlignment() in favor of this new function. This creates a main entry point to setting MaxAlignment, which will be helpful for future work. No functionality change intended. llvm-svn: 158758
* Teach CodeGen's version of computeMaskedBits to understand the range metadata.Rafael Espindola2012-03-311-2/+3
| | | | | | | | This is the CodeGen equivalent of r153747. I tested that there is not noticeable performance difference with any combination of -O0/-O2 /-g when compiling gcc as a single compilation unit. llvm-svn: 153817
* Print SSA and liveness tracking flags in MF::print().Jakob Stoklund Olesen2012-03-271-1/+7
| | | | llvm-svn: 153518
* Use uint16_t to store registers in callee saved register tables to reduce ↵Craig Topper2012-03-041-1/+1
| | | | | | size of static data. llvm-svn: 151996
* Move some llvm_unreachable's from r149849 out of switch statements to ↵Craig Topper2012-02-061-2/+2
| | | | | | satisfy -Wcovered-switch-default llvm-svn: 149860
* Convert assert(0) to llvm_unreachableCraig Topper2012-02-051-4/+2
| | | | llvm-svn: 149816
* Add a new MachineJumpTableInfo entry type, EK_GPRel64BlockAddress, which isAkira Hatanaka2012-02-031-0/+4
| | | | | | | | needed to emit a 64-bit gp-relative relocation entry. Make changes necessary for emitting jump tables which have entries with directive .gpdword. This patch does not implement the parts needed for direct object emission or JIT. llvm-svn: 149668
* make sure the file's matching header is #include'd first.Chris Lattner2012-01-271-3/+1
| | | | llvm-svn: 149113
* Rewrite CanShareConstantPoolEntry to be implemented in terms of theChris Lattner2012-01-271-26/+26
| | | | | | | | mid-level constant folding APIs instead of doing its own analysis. This makes it more general (e.g. can now share a <2 x i64> with a <4 x i32>) and avoid duplicating a bunch of logic. llvm-svn: 149111
* progress making the world safe to ConstantDataVector. WhileChris Lattner2012-01-261-1/+4
| | | | | | | | we're at it, allow PatternMatch's "neg" pattern to match integer vector negations, and enhance ComputeNumSigned bits to handle shl of vectors. llvm-svn: 149082
* drop unneeded config.h includesDylan Noblesmith2011-12-221-1/+0
| | | | llvm-svn: 147197
* Unweaken vtables as per ↵David Blaikie2011-12-201-0/+2
| | | | | | http://llvm.org/docs/CodingStandards.html#ll_virtual_anch llvm-svn: 146960
* Remove all remaining uses of Value::getNameStr().Benjamin Kramer2011-11-151-1/+1
| | | | llvm-svn: 144648
* Twinify GraphWriter a little bit.Benjamin Kramer2011-11-151-2/+2
| | | | llvm-svn: 144647
* land David Blaikie's patch to de-constify Type, with a few tweaks.Chris Lattner2011-07-181-1/+1
| | | | llvm-svn: 135375
* - Rename TargetInstrDesc, TargetOperandInfo to MCInstrDesc and MCOperandInfo andEvan Cheng2011-06-281-2/+2
| | | | | | | | 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
* Make the logic for determining function alignment more explicit. No ↵Eli Friedman2011-05-061-1/+5
| | | | | | functionality change. llvm-svn: 131012
* Use the PrintReg adaptor to correctly print live-in registers in debug output.Jakob Stoklund Olesen2011-05-021-17/+5
| | | | llvm-svn: 130715
* MachineConstantPoolValues are not uniqued, so they need to be freed if theyCameron Zwarich2011-02-221-1/+7
| | | | | | | | | share entries. Add a DenseSet to MachineConstantPool for the MachineCPVs that it owns. This will hopefully fix the MC/ARM/elf-reloc-01.ll failure on the leaks bots. llvm-svn: 126218
* Revert r124611 - "Keep track of incoming argument's location while emitting ↵Devang Patel2011-02-211-3/+1
| | | | | | | | | | | LiveIns." In other words, do not keep track of argument's location. The debugger (gdb) is not prepared to see line table entries for arguments. For the debugger, "second" line table entry marks beginning of function body. This requires some coordination with debugger to get this working. - The debugger needs to be aware of prolog_end attribute attached with line table entries. - The compiler needs to accurately mark prolog_end in line table entries (at -O0 and at -O1+) llvm-svn: 126155
* Keep track of incoming argument's location while emitting LiveIns.Devang Patel2011-01-311-1/+3
| | | | llvm-svn: 124611
* Rename TargetFrameInfo into TargetFrameLowering. Also, put couple of FIXMEs ↵Anton Korobeynikov2011-01-101-3/+3
| | | | | | and fixes here and there. llvm-svn: 123170
* move the pic base symbol stuff up to MachineFunctionChris Lattner2010-11-141-0/+7
| | | | | | | since it is trivial and will be shared between ppc and x86. This substantially simplifies the X86 backend also. llvm-svn: 119089
* Attach a GCModuleInfo to a MachineFunction.Nicolas Geoffray2010-10-311-2/+3
| | | | llvm-svn: 117867
* Include MachineBasicBlock numbers in viewCFG() output.Jakob Stoklund Olesen2010-10-301-8/+6
| | | | llvm-svn: 117765
* Teach MachineBasicBlock::print() to annotate instructions and blocks withJakob Stoklund Olesen2010-10-261-2/+2
| | | | | | SlotIndexes when available. llvm-svn: 117392
* Make CodeGen TBAA-aware.Dan Gohman2010-10-201-5/+10
| | | | llvm-svn: 116890
* force clients of MachineFunction::getMachineMemOperand to provide aChris Lattner2010-09-211-14/+4
| | | | | | | MachinePointerInfo, propagating the type out a level of API. Remove the old MachineFunction::getMachineMemOperand impl. llvm-svn: 114393
* start pushing MachinePointerInfo out through the MachineMemOperand interfaceChris Lattner2010-09-211-5/+11
| | | | | | to the MachineFunction construction methods. llvm-svn: 114390
* It's better to have the arrays, which would trigger the creation of stackBill Wendling2010-07-271-1/+1
| | | | | | | | | protectors, to be near the stack protectors on the stack. Accomplish this by tagging the stack object with a predicate that indicates that it would trigger this. In the prolog-epilog inserter, assign these objects to the stack after the stack protector but before the other objects. llvm-svn: 109481
* Remove too-strict assertion. We may want the vreg copy of the physical registerJim Grosbach2010-07-231-1/+0
| | | | | | | to be of a different register class. For example, in Thumb1 if the live-in is a high register, we want the vreg to be a low register. rdar://8224931 llvm-svn: 109291
* Fix debugging strings.Dan Gohman2010-07-071-2/+2
| | | | llvm-svn: 107795
* Infer alignments of fixed frame objects when they are constructed. This ↵Evan Cheng2010-07-041-1/+7
| | | | | | ensures remat'ed loads from fixed slots have the right alignments. llvm-svn: 107591
* Remove isSS argument from CreateFixedObject. Fixed objects cannot be spill ↵Evan Cheng2010-07-031-2/+2
| | | | | | slots so it's always false. llvm-svn: 107550
* Revert r107205 and r107207.Bill Wendling2010-06-291-7/+6
| | | | llvm-svn: 107215
* Introducing the "linker_weak" linkage type. This will be used for Objective-CBill Wendling2010-06-291-6/+7
| | | | | | | | | | | | | | | | | | | metadata types which should be marked as "weak", but which the linker will remove upon final linkage. For example, the "objc_msgSend_fixup_alloc" symbol is defined like this: .globl l_objc_msgSend_fixup_alloc .weak_definition l_objc_msgSend_fixup_alloc .section __DATA, __objc_msgrefs, coalesced .align 3 l_objc_msgSend_fixup_alloc: .quad _objc_msgSend_fixup .quad L_OBJC_METH_VAR_NAME_1 This is different from the "linker_private" linkage type, because it can't have the metadata defined with ".weak_definition". llvm-svn: 107205
* Avoid adding duplicate function live-in's.Evan Cheng2010-05-241-2/+8
| | | | llvm-svn: 104560
* Add more const qualifiers for LLVM IR pointers in CodeGen.Dan Gohman2010-04-151-1/+1
| | | | llvm-svn: 101342
* Add const qualifiers to CodeGen's use of LLVM IR constructs.Dan Gohman2010-04-151-8/+8
| | | | llvm-svn: 101334
* enhance MachineFunction to have a MMI pointer.Chris Lattner2010-04-051-2/+3
| | | | llvm-svn: 100414
OpenPOWER on IntegriCloud