summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/Sparc/SparcRegClassInfo.h
Commit message (Collapse)AuthorAgeFilesLines
* Great renaming: Sparc --> SparcV9Brian Gaeke2004-02-251-224/+0
| | | | llvm-svn: 11826
* Put all LLVM code into the llvm namespace, as per bug 109.Brian Gaeke2003-11-111-0/+4
| | | | llvm-svn: 9903
* Added LLVM copyright header.John Criswell2003-10-211-0/+7
| | | | llvm-svn: 9321
* Regularize header file commentsChris Lattner2003-10-131-3/+2
| | | | llvm-svn: 9071
* No longer include IGNode.h in the Sparc global headerChris Lattner2003-09-011-10/+1
| | | | llvm-svn: 8292
* (1) Major fix to the way unused regs. are marked and found for the FPVikram S. Adve2003-07-251-8/+30
| | | | | | | | | | | | | Single and FP double reg types (which share the same reg class). Now all methods marking/finding unused regs consider the regType within the reg class, and SparcFloatRegClass specializes this code. (2) Remove machine-specific regalloc. methods that are no longer needed. In particular, arguments and return value from a call do not need machine-specific code for allocation. (3) Rename TargetRegInfo::getRegType variants to avoid unintentional overloading when an include file is omitted. llvm-svn: 7334
* Added special consideration for instrumentation strategyAnand Shukla2003-07-201-0/+6
| | | | llvm-svn: 7208
* Major bug fix though it happened rarely (only on a compare after anVikram S. Adve2003-07-061-13/+8
| | | | | | | | integer overflow): We need to use %icc and not %xcc for comparisons on 32-bit or smaller integer values. llvm-svn: 7111
* Added special register class containing (for now) %fsr.Vikram S. Adve2003-05-271-7/+30
| | | | | | | | Fixed spilling of %fcc[0-3] which are part of %fsr. Moved some machine-independent reg-class code to class TargetRegInfo from SparcReg{Class,}Info. llvm-svn: 6339
* More renamings of Target/Machine*Info to Target/Target*InfoChris Lattner2002-12-291-9/+9
| | | | llvm-svn: 5204
* - Clean up interface to Sparc register handling a bit:Chris Lattner2002-08-121-128/+56
| | | | | | | | | | | | - Eliminate Sparc*Order classes, moving contents to Sparc*Class classes - get register name methods now return const char * const pointers instead of std::string's. - Added file header comments to SparcRegClassInfo.(cpp|h) - Moved BIG constant arrays out of SparcRegClassInfo.h, into SparcRegInfo.cpp. This should allow a LOT of std::string constructors to not have to be called. llvm-svn: 3295
* Convert RegClass::IsColorUsedArr from a dynamically allocated array toChris Lattner2002-05-231-11/+12
| | | | | | a vector. This makes asserting on array bounds easier. llvm-svn: 2731
* Numerous bug fixes:Vikram S. Adve2002-05-191-8/+12
| | | | | | | | | | | | | | | | | | | | | | | | -- correct sign extensions for integer casts and for shift-by-constant instructions generated for integer multiply -- 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 stack frame size when padding a section -- folding getelementptr operations with mixed array and struct indexes -- use uint64_t instead of uint for constant offsets in mem operands -- 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: 2640
* * Minor cleanupsChris Lattner2002-02-041-100/+39
| | | | | | | | | | * Reduce number of #includes * Remove blatently misleading qualifiers (how do you have an inlined pure virtual function?) * Remove unnecesary & ignored qualifiers (const int argument vs int argument) * SparcInternals.h now no longer #includes RegClass.h or SparcRegClassInfo.h * Pull inlined functions out of .h file if they are virtual and interfere with dependencies llvm-svn: 1677
* Changes to build successfully with GCC 3.02Chris Lattner2002-01-201-8/+8
| | | | llvm-svn: 1503
* Added more commentsRuchira Sasanka2002-01-071-16/+16
| | | | llvm-svn: 1498
* Added code to support correct saving of %ccr across callsRuchira Sasanka2001-11-031-3/+35
| | | | llvm-svn: 1111
* Corrected a bug in SparcRegInfo.cpp - to add inserted instructions before a ↵Ruchira Sasanka2001-10-231-1/+1
| | | | | | return llvm-svn: 969
* Reordered registers slightly to simplify a new check.Vikram S. Adve2001-10-221-3/+14
| | | | | | Added a function to map between the caller's and callee's register windows. llvm-svn: 941
* Added support for caller savingRuchira Sasanka2001-10-161-0/+21
| | | | llvm-svn: 847
* updated suggesting/coloring of call & return args & implicit operandsRuchira Sasanka2001-10-151-4/+4
| | | | llvm-svn: 830
* --removed %g regs being allocated - fix laterRuchira Sasanka2001-10-091-5/+6
| | | | llvm-svn: 714
* added support for suggesting colorsRuchira Sasanka2001-09-301-9/+9
| | | | llvm-svn: 671
* -- ruchiraRuchira Sasanka2001-09-181-0/+240
llvm-svn: 632
OpenPOWER on IntegriCloud