summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/Sparc/Sparc.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Move machine code generation/destruction passes out of Sparc.cpp becauseChris Lattner2002-10-281-44/+2
| | | | | | they are generic llvm-svn: 4310
* Move addPassesToEmitAssembly from TargetMachine to UltraSparc because itChris Lattner2002-10-281-0/+119
| | | | | | really is sparc specific. llvm-svn: 4308
* Changed `MachineCodeForMethod' to `MachineFunction'.Misha Brukman2002-10-281-5/+5
| | | | llvm-svn: 4301
* Prune #includesChris Lattner2002-10-251-2/+0
| | | | llvm-svn: 4277
* Added class MachineOptInfo as interface to target-specificVikram S. Adve2002-09-201-1/+2
| | | | | | | routines supporting machine code optimization. Also added method MachineInstrInfo::getNOPOpCode(). llvm-svn: 3845
* Move all the code that creates code generation passes from Sparc.cpp toVikram S. Adve2002-09-161-89/+3
| | | | | | | | TargetMachine.cpp, since it is entirely machine-independent. Also, add options to disable optional back-end passes (preselection and instr. scheduling). llvm-svn: 3740
* Added getFunctionInfo and MappingInfoForFunction pass, and fixed the earlier ↵Anand Shukla2002-08-271-3/+3
| | | | | | error in compiling llvm-svn: 3513
* Fix breakage in the buildChris Lattner2002-08-071-3/+2
| | | | llvm-svn: 3258
* added Mapping and Function PassMehwish Nagda2002-08-051-1/+5
| | | | llvm-svn: 3251
* * Move InstructionSelection pass to lib/CodeGen/InstrSelection so it isChris Lattner2002-07-301-18/+1
| | | | | | shared by backends. llvm-svn: 3146
* GCC 3.1 changes, finally the burm file builds the FIRST time a clean ↵Chris Lattner2002-07-251-2/+2
| | | | | | directory is built. llvm-svn: 3073
* Added the Mapping Pass to out put Mapping Info to .s fileMehwish Nagda2002-07-151-3/+6
| | | | llvm-svn: 2913
* MEGAPATCH checkin.Chris Lattner2002-06-251-16/+13
| | | | | | For details, See: docs/2002-06-25-MegaPatchInfo.txt llvm-svn: 2778
* Add new optional getPassName() virtual function that a Pass can overrideChris Lattner2002-04-291-0/+9
| | | | | | to make debugging output a lot nicer. llvm-svn: 2395
* * Rename MethodPass class to FunctionPassChris Lattner2002-04-271-7/+7
| | | | | | | | | | | | | | | - Rename runOnMethod to runOnFunction * Transform getAnalysisUsageInfo into getAnalysisUsage - Method is now const - It now takes one AnalysisUsage object to fill in instead of 3 vectors to fill in - Pass's now specify which other passes they _preserve_ not which ones they modify (be conservative!) - A pass can specify that it preserves all analyses (because it never modifies the underlying program) * s/Method/Function/g in other random places as well llvm-svn: 2333
* Don't pad spills and temp. stack areas for alignment.Vikram S. Adve2002-04-251-4/+5
| | | | | | | Freeze auto vars and spill areas when their sizes are used for computing other offsets. llvm-svn: 2317
* * Add a useful file commentChris Lattner2002-04-091-91/+7
| | | | | | | | * Move InsertPrologEpilogCode class to PrologEpilogCodeInserter.cpp -> Among other things, this eliminates the need for the minstrVec static global array. llvm-svn: 2195
* s/Method/FunctionChris Lattner2002-04-081-1/+1
| | | | llvm-svn: 2180
* Change references to the Method class to be references to the FunctionChris Lattner2002-04-071-37/+39
| | | | | | | class. The Method class is obsolete (renamed) and all references to it are being converted over to Function. llvm-svn: 2144
* Bug re-fix: put back MachineCodeForInstruction::get(*I).dropAllReferences().Vikram S. Adve2002-03-241-5/+8
| | | | | | Also re-enable instr. scheduling pass. llvm-svn: 1966
* Minor fixes.Vikram S. Adve2002-03-181-3/+7
| | | | llvm-svn: 1892
* * Pull BasicBlock::pred_* and BasicBlock::succ_* out of BasicBlock.h and intoChris Lattner2002-02-121-3/+5
| | | | | | | | | llvm/Support/CFG.h * Make pred & succ iterators for intervals global functions * Add #includes that are now neccesary because BasicBlock.h doesn't include InstrTypes.h anymore llvm-svn: 1750
* Method.h no longer includes BasicBlock.hChris Lattner2002-02-121-1/+6
| | | | | | | Method::inst_* is now in llvm/Support/InstIterator.h GraphTraits specializations for BasicBlock and Methods are now in llvm/Support/CFG.h llvm-svn: 1746
* Write llvm bytecode to output .s file as last step of LLC.Chris Lattner2002-02-111-0/+3
| | | | llvm-svn: 1728
* The interface to instruction scheduling is now just a call to get the pass.Chris Lattner2002-02-041-12/+1
| | | | llvm-svn: 1702
* Convert RegisterAllocator interface to opaque pass type, so that users do notChris Lattner2002-02-041-1/+1
| | | | | | need to know _anything_ about RegAlloc to use it. Well in the end maybe. llvm-svn: 1681
* * Minor cleanupsChris Lattner2002-02-041-0/+1
| | | | | | | | | | * 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
* Pull all of the scheduling related stuff out of Sparc.cpp into it's own fileChris Lattner2002-02-041-734/+4
| | | | llvm-svn: 1668
* Split RegisterAllocation stuff OUT of Sparc.cpp into a well defined passChris Lattner2002-02-041-27/+2
| | | | | | that has a very minimal interface (like it should have). llvm-svn: 1667
* Move a ton of tables out of SparcInternals.h and move them to Sparc.cpp.Chris Lattner2002-02-041-0/+685
| | | | | | | Eventually they will probably get moved again, but at least now they aren't having to be compiled by 7 different .cpp files... llvm-svn: 1666
* Convert sparc backend over to use pass based compilation structure.Chris Lattner2002-02-031-96/+119
| | | | | | | Convert some stages into passes in preparation for more splitting up. Try to decouple stuff as much as possible. llvm-svn: 1663
* * Swithc to new MachineCodeForInstruction modelChris Lattner2002-02-031-5/+22
| | | | | | * Implement memory freeing for instruction temporaries llvm-svn: 1653
* Changes to build successfully with GCC 3.02Chris Lattner2002-01-201-6/+6
| | | | llvm-svn: 1503
* Added comments and correct logic for finding register sizes.Ruchira Sasanka2002-01-071-1/+4
| | | | llvm-svn: 1494
* When allocating space on stack for writing a register,Vikram S. Adve2001-11-121-4/+12
| | | | | | | use the size of the register, not the size of the Value type, to get the right alignment. llvm-svn: 1284
* Added class UltraSparcCacheInfo.Vikram S. Adve2001-11-091-1/+2
| | | | llvm-svn: 1225
* Use MachineFrameInfo as base class of UltraSparcFrameInfo, and madeVikram S. Adve2001-11-081-35/+42
| | | | | | a major overhaul of this class and how stack frames are managed. llvm-svn: 1191
* Added a frame layout class, and code to insert prolog/epilog code.Vikram S. Adve2001-10-221-15/+143
| | | | llvm-svn: 942
* Moved implementation of class UltraSparcInstrInfo to SparcInstrInfo.cpp.Vikram S. Adve2001-10-181-19/+0
| | | | llvm-svn: 863
* Output to cerr rather than cout so that debug info doesn't mess up assembly ↵Chris Lattner2001-10-151-3/+3
| | | | | | generation llvm-svn: 840
* updated suggesting/coloring of call & return args & implicit operandsRuchira Sasanka2001-10-151-0/+1
| | | | llvm-svn: 830
* Make the sparc.burg file be a little more flexible and rubust in the fact ofChris Lattner2001-10-141-1/+0
| | | | | | | | renumbering of instructions. It is still horribly broken and grossly dependant on the number of instructions, but now it is a least a little better. Oh yeah it also works now. llvm-svn: 793
* Seperate instruction definitions into new SparcInstr.def fileChris Lattner2001-09-191-6/+8
| | | | | | | Move contents of SparcMachineInstrDesc[] out of SparcInternals.h into Sparc.cpp llvm-svn: 644
* -- ruchiraRuchira Sasanka2001-09-181-308/+16
| | | | llvm-svn: 632
* Make class TargetMachine the common interface to all target-dependentVikram S. Adve2001-09-181-49/+64
| | | | | | | | information, including instr, sched, and reg information. Rename files to match the primary classes they provide. Commented out call to register allocation until more tests run correctly. llvm-svn: 616
* modified printing of debug messagesRuchira Sasanka2001-09-151-26/+1
| | | | llvm-svn: 593
* added register allocation codeRuchira Sasanka2001-09-151-1/+364
| | | | llvm-svn: 585
* Chris seems fond of #include <vector>. Fix these. Also convert use list inChris Lattner2001-09-141-5/+5
| | | | | | | | Value to a vector instead of a list. Move SchedGraph.h & SchedPriorities.h into lib/CodeGen/InstrScheduling llvm-svn: 572
* Checkin changes to:Chris Lattner2001-09-141-11/+9
| | | | | | | | | 1. Clean up the TargetMachine structure. No more wierd pointers that have to be cast around and taken care of by the target. 2. Instruction Scheduling now takes the schedinfo as an argument. The same should be done with the instinfo, it just isn't now. llvm-svn: 565
* Move files.Chris Lattner2001-09-141-0/+123
llvm-svn: 561
OpenPOWER on IntegriCloud