summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen
Commit message (Collapse)AuthorAgeFilesLines
* 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
* A single MachineInstr operand may now be both a def and a use,Vikram S. Adve2002-07-085-102/+91
| | | | | | | | | so additional dep. edges have to be added. This was needed to correctly handle conditional move instructions! MachineCodeForBasicBlock is now an annotation on BasicBlock. Renamed "earliestForNode" to "earliestReadyTimeForNode". llvm-svn: 2826
* getUsableUniRegAtMI interface simplified slightly.Vikram S. Adve2002-07-081-6/+7
| | | | llvm-svn: 2822
* Moved class MachineCodeForBasicBlock to MachineCodeForBasicBlock.{cpp,h}.Vikram S. Adve2002-07-081-11/+25
| | | | | | | | An (explicit or implicit) operand may now be both a def and a use. Also add a set of regs used by each instruction. dump() no longer takes an optional argument, which doesn't work in gdb. llvm-svn: 2821
* MachineInstr* in vector are not const (and never really were)Vikram S. Adve2002-07-081-1/+1
| | | | | | because operands may be modified directly to set register. llvm-svn: 2820
* Remove tag that just clutters diffsChris Lattner2002-06-301-1/+0
| | | | llvm-svn: 2807
* changes to make it compatible with 64bit gccAnand Shukla2002-06-252-2/+4
| | | | llvm-svn: 2791
* MEGAPATCH checkin.Chris Lattner2002-06-254-152/+133
| | | | | | For details, See: docs/2002-06-25-MegaPatchInfo.txt llvm-svn: 2779
* MEGAPATCH checkin.Chris Lattner2002-06-253-92/+71
| | | | | | For details, See: docs/2002-06-25-MegaPatchInfo.txt llvm-svn: 2778
* Convert RegClass::IsColorUsedArr from a dynamically allocated array toChris Lattner2002-05-233-39/+30
| | | | | | a vector. This makes asserting on array bounds easier. llvm-svn: 2731
* Move debug options out of header files so that the header does not haveChris Lattner2002-05-223-9/+8
| | | | | | to #include CommandLine.h. llvm-svn: 2712
* Avoid #including CommandLine.hChris Lattner2002-05-221-4/+2
| | | | llvm-svn: 2710
* Hide debugging optionsChris Lattner2002-05-203-3/+3
| | | | llvm-svn: 2676
* Don't lose namespace qualifications on previous patch.Chris Lattner2002-05-201-2/+2
| | | | llvm-svn: 2664
* InstrnsBefore and InstrnsAfter are now vectors instead of deques.Vikram S. Adve2002-05-191-3/+3
| | | | | | | May be slightly less efficient but significantly reduces special cases interfaces in code generation. llvm-svn: 2649
* Better folding getelementptr operations with mixedVikram S. Adve2002-05-191-41/+61
| | | | | | | | array and struct indexes. Update operand values in CallArgsDescriptor (a new class) when replacing constant values with immediates. llvm-svn: 2645
* cpValue2Value now needs a vector of MachineInstr to store return values.Vikram S. Adve2002-05-191-16/+20
| | | | llvm-svn: 2644
* Annotation class for MachineInstr.Vikram S. Adve2002-05-191-0/+39
| | | | llvm-svn: 2643
* Numerous bug fixes:Vikram S. Adve2002-05-192-27/+58
| | | | | | | | | | | | | | | | | | | -- passing FP arguments to functions with more than 6 arguments -- passing FP arguments to varargs functions -- passing FP arguments to functions with no prototypes -- incorrect coloring for CC registers (both int and FP): interferences were being completely ignored for int CC and were considered but no spills were marked for fp CC! Also some code improvements: -- better interface to generating machine instr for common cases (many places still need to be updated to use this interface) -- annotations on MachineInstr to communicate information from one codegen phase to another (now used to pass information about CALL/JMPLCALL operands from selection to register allocation) -- all sizes and offests in class TargetData are uint64_t instead of uint llvm-svn: 2642
* Replace all usages of Type::isPointerType with isa<PointerType>Chris Lattner2002-05-061-2/+2
| | | | llvm-svn: 2486
* Add neccesary #includeChris Lattner2002-04-291-0/+1
| | | | llvm-svn: 2406
* Eliminate duplicate or unneccesary #include'sChris Lattner2002-04-2913-18/+5
| | | | llvm-svn: 2397
* Add new optional getPassName() virtual function that a Pass can overrideChris Lattner2002-04-292-0/+4
| | | | | | to make debugging output a lot nicer. llvm-svn: 2395
* Include appropriate fileChris Lattner2002-04-281-0/+2
| | | | llvm-svn: 2379
* Split ConstantVals.h into Constant.h and Constants.hChris Lattner2002-04-282-2/+2
| | | | llvm-svn: 2378
* Eliminate the cfg namespace, moving LoopInfo, Dominators, Interval* classesChris Lattner2002-04-281-6/+4
| | | | | | to the global namespace llvm-svn: 2370
* Remove all contents of the cfg namespace to the global namespaceChris Lattner2002-04-281-4/+4
| | | | llvm-svn: 2369
* s/Method/FunctionChris Lattner2002-04-275-20/+20
| | | | llvm-svn: 2336
OpenPOWER on IntegriCloud