summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Target/Sparc/Sparc.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Make LLI behave just like LLC with regard to the compile passes it uses.Misha Brukman2003-05-301-0/+15
| | | | llvm-svn: 6444
* * Allow passing in an unsigned configuration to allocateSparcTargetMachine()Misha Brukman2003-05-271-10/+35
| | | | | | | | a default value is set in the header file. * Fixed some code layout to make it more consistent with the rest of codebase * Added addPassesToJITCompile() with relevant passes llvm-svn: 6369
* Remove two fields from TargetData which are target specific.Chris Lattner2003-04-261-1/+1
| | | | llvm-svn: 5963
* Add support for the Switch instruction by running the lowerSwitch pass firstChris Lattner2003-04-231-0/+3
| | | | llvm-svn: 5867
* Rename MachineInstrInfo -> TargetInstrInfoChris Lattner2003-01-141-2/+2
| | | | llvm-svn: 5272
* * Frame & const pool info is no longer directly in MachineFunctionChris Lattner2002-12-281-8/+10
| | | | llvm-svn: 5173
* Sparc is not little endianChris Lattner2002-12-241-1/+1
| | | | llvm-svn: 5129
* Initialize implicit uses/defs fields for sparc backend to empty listChris Lattner2002-12-031-1/+3
| | | | llvm-svn: 4876
* Reassociate pass now worksChris Lattner2002-10-311-1/+1
| | | | llvm-svn: 4473
* Sparc backend doesn't use target specific flags yetChris Lattner2002-10-301-1/+1
| | | | llvm-svn: 4440
* * Privatize the TargetNameChris Lattner2002-10-291-6/+2
| | | | | | | * Move optSizeForSubWordData to TargetData * Remove unused fields llvm-svn: 4417
* Allow TargetMachine to refuse static code genChris Lattner2002-10-291-1/+2
| | | | llvm-svn: 4415
* Rename Sparc.h to TargetMachineImpls.hChris Lattner2002-10-291-1/+1
| | | | llvm-svn: 4407
* MachineInstrInfo doesn't need a TargetMachineChris Lattner2002-10-291-1/+0
| | | | llvm-svn: 4372
* 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
OpenPOWER on IntegriCloud