summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Rename CreateReg to CreateRegs, and MakeReg to CreateReg.Dan Gohman2010-07-021-4/+5
| | | | llvm-svn: 107451
* Rename CreateRegForValue to CreateReg, and change its argumentDan Gohman2010-07-011-5/+5
| | | | | | | from a Value to a Type, because it doesn't actually care about the Value. llvm-svn: 107383
* use ArgOperand APIGabor Greif2010-06-301-10/+10
| | | | llvm-svn: 107282
* use ArgOperand APIGabor Greif2010-06-251-1/+1
| | | | llvm-svn: 106828
* prune an includeGabor Greif2010-06-251-1/+0
| | | | llvm-svn: 106827
* SelectionDAG shouldn't have a FunctionLoweringInfo member. RegsForValueDan Gohman2010-05-291-2/+1
| | | | | | | shouldn't have a TargetLoweringInfo member. And FunctionLoweringInfo::set doesn't needs its EnableFastISel argument. llvm-svn: 105101
* Remove the code for special-casing byval for fast-isel. SelectionDAGDan Gohman2010-05-011-3/+1
| | | | | | | handles argument lowering anyway, so there's no need for special casing here. llvm-svn: 102828
* Replace r102368 with code that's less fragile. This creates DBG_VALUE ↵Evan Cheng2010-04-281-0/+1
| | | | | | instructions for function arguments early and insert them after instruction selection is done. llvm-svn: 102554
* Move several SelectionDAG-independent utility functions out of theDan Gohman2010-04-211-261/+1
| | | | | | SelectionDAG directory and into a new Analysis.cpp file. llvm-svn: 101975
* Sink this use_empty() check into isUsedOutsideOfDefiningBlock.Dan Gohman2010-04-201-1/+2
| | | | llvm-svn: 101902
* If a PHI node somehow has debug info, propogate it to the MachineInstr PHI.Dan Gohman2010-04-201-1/+1
| | | | llvm-svn: 101901
* Don't iterate through the whole block just to find the PHI nodes.Dan Gohman2010-04-201-6/+3
| | | | llvm-svn: 101900
* Move isInTailCallPosition out of SelectionDAGBuilder, as it isn'tDan Gohman2010-04-191-0/+85
| | | | | | SelectionDAG-specific. llvm-svn: 101801
* Use const qualifiers with TargetLowering. This eliminates severalDan Gohman2010-04-171-1/+1
| | | | | | | | | | | | | const_casts, and it reinforces the design of the Target classes being immutable. SelectionDAGISel::IsLegalToFold is now a static member function, because PIC16 uses it in an unconventional way. There is more room for API cleanup here. And PIC16's AsmPrinter no longer uses TargetLowering. llvm-svn: 101635
* Revert 101465, it broke internal OpenGL testing.Eric Christopher2010-04-161-6/+7
| | | | | | | Probably the best way to know that all getOperand() calls have been handled is to replace that API instead of updating. llvm-svn: 101579
* reapply r101434Gabor Greif2010-04-161-7/+6
| | | | | | | | | | | | | with a fix for self-hosting rotate CallInst operands, i.e. move callee to the back of the operand array the motivation for this patch are laid out in my mail to llvm-commits: more efficient access to operands and callee, faster callgraph-construction, smaller compiler binary llvm-svn: 101465
* back out r101423 and r101397, they break llvm-gcc self-host on darwin10Gabor Greif2010-04-161-6/+7
| | | | llvm-svn: 101434
* reapply r101364, which has been backed out in r101368Gabor Greif2010-04-151-7/+6
| | | | | | | | | | | | | with a fix rotate CallInst operands, i.e. move callee to the back of the operand array the motivation for this patch are laid out in my mail to llvm-commits: more efficient access to operands and callee, faster callgraph-construction, smaller compiler binary llvm-svn: 101397
* back out r101364, as it trips the linux nightlybot on some clang C++ testsGabor Greif2010-04-151-6/+7
| | | | llvm-svn: 101368
* rotate CallInst operands, i.e. move callee to the backGabor Greif2010-04-151-7/+6
| | | | | | | | | | of the operand array the motivation for this patch are laid out in my mail to llvm-commits: more efficient access to operands and callee, faster callgraph-construction, smaller compiler binary llvm-svn: 101364
* Add more const qualifiers for LLVM IR pointers in CodeGen.Dan Gohman2010-04-151-16/+18
| | | | llvm-svn: 101342
* Add const qualifiers to CodeGen's use of LLVM IR constructs.Dan Gohman2010-04-151-1/+1
| | | | llvm-svn: 101334
* Factor out EH landing pad code into a separate function, and constifyDan Gohman2010-04-141-6/+7
| | | | | | a bunch of stuff to support it. llvm-svn: 101273
* Pull utility routines with no SelectionDAG dependence out ofDan Gohman2010-04-141-0/+76
| | | | | | | SelectionDAGBuilder. FunctionLoweringInfo isn't an ideal place for them to live, but it's better than SelectionDAGBuilder for now. llvm-svn: 101267
* Move this assert out of SelectionDAGISel into FunctionLoweringInfo, andDan Gohman2010-04-141-0/+3
| | | | | | drop the redundant #ifndef NDEBUG. llvm-svn: 101261
* Sink landing-pad marking code out ofDan Gohman2010-04-141-0/+5
| | | | | | SelectionDAGISel::runOnMachineFunction into FunctionLowering. llvm-svn: 101252
* It's not necessary to recompute EB here.Dan Gohman2010-04-141-1/+1
| | | | llvm-svn: 101251
* Forgot the part where we handle the ".llvm.eh.catch.all.value".Bill Wendling2010-03-271-2/+11
| | | | llvm-svn: 99697
* move target-independent opcodes out of TargetInstrInfoChris Lattner2010-02-091-1/+1
| | | | | | | | | into TargetOpcodes.h. #include the new TargetOpcodes.h into MachineInstr. Add new inline accessors (like isPHI()) to MachineInstr, and start using them throughout the codebase. llvm-svn: 95687
* Trim unneeded includes.Evan Cheng2010-01-211-1/+0
| | | | llvm-svn: 94105
* Avoid going through the LLVMContext for type equality where it's safe to ↵Benjamin Kramer2010-01-051-1/+1
| | | | | | dereference the type pointer. llvm-svn: 92726
* Move CopyCatchInfo into FunctionLoweringInfo.cpp too, for consistency.Dan Gohman2009-11-231-1/+13
| | | | llvm-svn: 89683
* Move some more code out of SelectionDAGBuild.cpp and intoDan Gohman2009-11-231-0/+65
| | | | | | FunctionLoweringInfo.cpp. llvm-svn: 89674
* Move the FunctionLoweringInfo class and some related utility functions outDan Gohman2009-11-231-0/+278
of SelectionDAGBuild.h/cpp into its own files, to help separate general lowering logic from SelectionDAG-specific lowering logic. llvm-svn: 89667
OpenPOWER on IntegriCloud