summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen
Commit message (Collapse)AuthorAgeFilesLines
...
* Remove unnecessary include.Vikram S. Adve2002-09-141-2/+0
| | | | llvm-svn: 3723
* Break RA_DEBUG option into several levels to get better output.Vikram S. Adve2002-09-141-0/+23
| | | | llvm-svn: 3722
* Moving to lib/CodeGen/RegAlloc.Vikram S. Adve2002-09-141-18/+0
| | | | llvm-svn: 3718
* Fix a bug I introduced into the code generator. :(Chris Lattner2002-09-121-1/+1
| | | | llvm-svn: 3694
* - Change getelementptr instruction to use long indexes instead of uintChris Lattner2002-09-111-8/+8
| | | | | | indexes for sequential types. llvm-svn: 3681
* Make sure the leakdetector is told about temporary Phi nodes also, so it doesn'tChris Lattner2002-09-081-1/+6
| | | | | | erroneously report them as leaks llvm-svn: 3624
* Inform the memory leak detector that TmpInstruction objects should not beChris Lattner2002-09-081-0/+24
| | | | | | subject to memory leak checking. llvm-svn: 3623
* - Renamed Type::isIntegral() to Type::isInteger()Chris Lattner2002-09-031-7/+7
| | | | | | | - Added new method Type::isIntegral() that is the same as isInteger, but also accepts bool. llvm-svn: 3574
* moved this file from lib/Reoptimizer/MappingAnand Shukla2002-08-271-0/+75
| | | | llvm-svn: 3519
* Makefile for new sub directoryAnand Shukla2002-08-271-0/+4
| | | | llvm-svn: 3518
* Added Mapping subdirAnand Shukla2002-08-271-1/+1
| | | | llvm-svn: 3517
* Use newly-added type inspection support in InstTreeNode subclasses.Vikram S. Adve2002-08-241-5/+4
| | | | llvm-svn: 3501
* Moved code here to extract memory instruction indices and to checkVikram S. Adve2002-08-241-17/+96
| | | | | | | whether FoldGetElemNodes should be called. This is machine-independent but was in the Sparc directory. This is in a new function: GetMemInstArgs. llvm-svn: 3500
* Added #include <alloca.h>Anand Shukla2002-08-231-0/+1
| | | | llvm-svn: 3491
* Eliminated the MemAccessInst class, folding contents into GEP class.Chris Lattner2002-08-222-9/+8
| | | | llvm-svn: 3487
* dumpNode() does not need to print MachineInstrs.Vikram S. Adve2002-08-221-15/+2
| | | | llvm-svn: 3444
* Unary Not (boolean and bitwise) is no longer a separate LLVM instructionVikram S. Adve2002-08-151-2/+7
| | | | | | | | | but is instead implemented with XOR. Note that the InstrForest opLabels for Not and BNot remain the same, i.e., the XOR is recognized and represented as a (boolean or bitwise) Not when building the instruction trees. But these tree nodes are now binary, not unary. llvm-svn: 3343
* Add method MachineInstr::substituteValue() which substitutesVikram S. Adve2002-08-141-0/+29
| | | | | | | one Value with another one in all operands and implicit references of the machine instruction. llvm-svn: 3306
* * Removed extraneous #includesChris Lattner2002-08-094-51/+16
| | | | | | | * Fixed file headers to be consistent with the rest of LLVM * Other minor fixes llvm-svn: 3278
* * Removed extraneous #includesChris Lattner2002-08-095-50/+23
| | | | | | | * Fixed file headers to be consistent with the rest of LLVM * Other minor fixes llvm-svn: 3277
* We are using std::vector, so remove extraneous namespace prefixesChris Lattner2002-08-091-8/+7
| | | | llvm-svn: 3275
* Very minor cleanupsChris Lattner2002-08-091-23/+15
| | | | llvm-svn: 3271
* - Cleaned up the interface to AnalysisUsage to take analysis class namesChris Lattner2002-08-081-1/+1
| | | | | | | instead of ::ID's. - Pass::getAnalysis<> now no longer takes an optional argument llvm-svn: 3265
* - Cleaned up the interface to AnalysisUsage to take analysis class namesChris Lattner2002-08-081-2/+2
| | | | | | | instead of ::ID's. - Pass::getAnalysis<> now no longer takes an optional argument llvm-svn: 3264
* Add function GetConstantValueAsUnsignedInt.Vikram S. Adve2002-08-041-52/+49
| | | | | | | | Fix 2 bugs in FoldGetElemChain so index vector is not modified when no GEPs are folded in, and so a hasLeadingZero is computed only for the last folded GEP, not the one after that if any. llvm-svn: 3244
* * Move InstructionSelection Pass here instead of living in Sparc.cpp. ItChris Lattner2002-07-301-169/+146
| | | | | | | | | is platform independant afterall. * Object orientize the functions, cleanup code a bit. Instead of static global functions, the helpers for instruction selection are now part of the InstructionSelection Pass class. llvm-svn: 3147
* Remove unused vectorChris Lattner2002-07-301-3/+0
| | | | llvm-svn: 3143
* Refix stuff for GCC 2.95, 3.0.4 & 3.1Chris Lattner2002-07-251-6/+6
| | | | llvm-svn: 3094
* now removes deleted nops from MachineCodeForInstructionMehwish Nagda2002-07-251-8/+20
| | | | llvm-svn: 3090
* *** empty log message ***Chris Lattner2002-07-255-12/+12
| | | | llvm-svn: 3075
* *** empty log message ***Chris Lattner2002-07-241-2/+2
| | | | llvm-svn: 3058
* Non-standard hash classes are not in the std:: namespaceChris Lattner2002-07-241-1/+1
| | | | llvm-svn: 3057
* *** empty log message ***Chris Lattner2002-07-246-11/+10
| | | | llvm-svn: 3056
* moving to the Reoptimizer/Mapping dirMehwish Nagda2002-07-221-279/+0
| | | | llvm-svn: 2993
* *** empty log message ***Chris Lattner2002-07-223-18/+25
| | | | llvm-svn: 2985
* changed size computationMehwish Nagda2002-07-191-35/+57
| | | | llvm-svn: 2974
* added check for Function with 0 BBMehwish Nagda2002-07-171-18/+28
| | | | llvm-svn: 2942
* Now will profile all Basic BlocksMehwish Nagda2002-07-161-22/+22
| | | | llvm-svn: 2922
* Initial checking : Writes LLVM - MI mappiing to the .s fileMehwish Nagda2002-07-151-0/+247
| | | | llvm-svn: 2911
* added std:: to endlAnand Shukla2002-07-111-1/+1
| | | | llvm-svn: 2875
* Fix print of BB name in dump().Vikram S. Adve2002-07-101-2/+1
| | | | llvm-svn: 2861
* Add support for marking each operand as a %hh, %hm, %lm or %lo.Vikram S. Adve2002-07-101-34/+38
| | | | | | | Represent previous bools and these ones with flags in a single byte per operand. llvm-svn: 2860
* changed mem_fun to std::mem_funAnand Shukla2002-07-091-2/+2
| | | | llvm-svn: 2847
* Significant changes to correctly spill CC registers and to correctlyVikram S. Adve2002-07-081-239/+164
| | | | | | | | | | | | | | | | | handle conditional move instructions: -- cpMem<->Reg functions now support CC registers (int and FP) correctly. -- Scratch registers must be explicitly provided to cpMem<->Reg when needed, since CC regs need one to be copied to/from memory. -- CC regs are saved to a scratch register instead of stack. -- All regs used by a instruction are now recorded in MachineInstr::regsUsed, since regs used to save values *across* an instruction are not obvious either from the operands or from the LiveVar sets. -- An (explicit or implicit) operand may now be both a def and a use. This is needed for conditional move operations. So an operand may need spill code both before and after the instruction. -- class MachineCodeForBasicBlock is now an annotation on BasicBlock. llvm-svn: 2833
* MachineInstr* in vector are not const (and never really were)Vikram S. Adve2002-07-081-9/+10
| | | | | | | because operands may be modified directly to set register. Also, class MachineCodeForBasicBlock is now an annotation on BasicBlock. llvm-svn: 2832
* Rename static struct Initializer to avoid name conflict with BB.Vikram S. Adve2002-07-081-3/+3
| | | | llvm-svn: 2831
* Fix printing of BB in dump.Vikram S. Adve2002-07-081-2/+3
| | | | llvm-svn: 2830
* Moved class MachineCodeForBasicBlock to MachineCodeForBasicBlock.h.Vikram S. Adve2002-07-081-3/+4
| | | | | | This class is now an annotation on BasicBlock. llvm-svn: 2829
* MachineInstr::dump() now takes no arguments.Vikram S. Adve2002-07-081-1/+1
| | | | llvm-svn: 2828
* Implementation of class MachineCodeForBasicBlock.Vikram S. Adve2002-07-081-0/+28
| | | | | | Moved here from MachineInstr.cpp to make it an annotation on BasicBlock. llvm-svn: 2827
OpenPOWER on IntegriCloud