summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen
Commit message (Collapse)AuthorAgeFilesLines
* *** empty log message ***Guochun Shi2003-03-275-0/+2726
| | | | llvm-svn: 5755
* Print machine frame objects with the frame offset intrinsic to the machineChris Lattner2003-01-161-7/+12
| | | | llvm-svn: 5329
* Fix problems with empty basic blocksChris Lattner2003-01-163-12/+16
| | | | llvm-svn: 5326
* Arg, fix bugs in previous checkin...Chris Lattner2003-01-161-2/+2
| | | | llvm-svn: 5322
* Add assertionChris Lattner2003-01-161-2/+5
| | | | llvm-svn: 5321
* * Insert prolog/epilog code before rewriting indexesChris Lattner2003-01-151-23/+23
| | | | | | * Fix calculation of frame offsets when there is an offset. llvm-svn: 5318
* Move sparc specific code into the Sparc backendChris Lattner2003-01-151-256/+2
| | | | llvm-svn: 5317
* Adjust to new interfacesChris Lattner2003-01-152-6/+8
| | | | llvm-svn: 5314
* Move headers aroundChris Lattner2003-01-152-2/+2
| | | | llvm-svn: 5312
* Header is moved into local directoryChris Lattner2003-01-151-3/+2
| | | | llvm-svn: 5311
* Fix bug in previous checkinChris Lattner2003-01-151-1/+2
| | | | llvm-svn: 5310
* Add new methodChris Lattner2003-01-151-0/+1
| | | | llvm-svn: 5309
* #include RegClass.h explicitlyChris Lattner2003-01-154-4/+5
| | | | llvm-svn: 5307
* Remvoe dependency on RegClass.hChris Lattner2003-01-151-3/+4
| | | | llvm-svn: 5306
* Prune #includesChris Lattner2003-01-151-1/+0
| | | | llvm-svn: 5303
* Minor changesChris Lattner2003-01-152-30/+27
| | | | llvm-svn: 5302
* Remove obsolete ctorChris Lattner2003-01-151-9/+0
| | | | llvm-svn: 5301
* Remove dead codeChris Lattner2003-01-151-67/+0
| | | | llvm-svn: 5298
* Use buildmi not MI ctor directlyChris Lattner2003-01-151-3/+2
| | | | llvm-svn: 5293
* Rename llvm/Analysis/LiveVar/FunctionLiveVarInfo.h -> ↵Chris Lattner2003-01-143-4/+4
| | | | | | llvm/CodeGen/FunctionLiveVarInfo.h llvm-svn: 5284
* Move llvm/Analysis/LiveVar/ValueSet.h to CodeGen/ValueSet.hChris Lattner2003-01-142-2/+2
| | | | llvm-svn: 5282
* Rename MachineInstrInfo -> TargetInstrInfoChris Lattner2003-01-1411-34/+34
| | | | llvm-svn: 5272
* New filesChris Lattner2003-01-132-0/+390
| | | | llvm-svn: 5262
* * Use the PHI Elimination passChris Lattner2003-01-131-80/+6
| | | | llvm-svn: 5220
* * Convert to use LiveVariable analysisChris Lattner2003-01-131-261/+251
| | | | | | | | | | | * Convert to use PHIElimination pass * Don't spill values which have just been reloaded (big win reducing spills) * Add experimental support for eliminating spills before TwoAddress instructions. It currently is broken so it is #ifdef'd out. * Use new "is terminator" flag on instructions instead of looking for branches and returns explicitly. llvm-svn: 5219
* Convert to MachineFunctionPassChris Lattner2003-01-131-7/+6
| | | | llvm-svn: 5218
* Add support for 3 new forms of MachineOperandChris Lattner2003-01-131-18/+39
| | | | llvm-svn: 5217
* Add support for constant poolChris Lattner2003-01-131-1/+29
| | | | | | Add helper methods for MachineFrameInfo llvm-svn: 5216
* Add support for global address by string and constant pool valuesChris Lattner2003-01-131-1/+10
| | | | llvm-svn: 5215
* More renamings of Target/Machine*Info to Target/Target*InfoChris Lattner2002-12-299-18/+18
| | | | llvm-svn: 5204
* Rename MachineOptInfo to TargetoptInfoChris Lattner2002-12-291-1/+1
| | | | | | Rename MachineCacheInfo to TargetCacheInfo llvm-svn: 5203
* Rename FunctionFrameInfo to MachineFrameInfoChris Lattner2002-12-284-10/+10
| | | | llvm-svn: 5200
* Rename MachineFrameInfo to TargetFrameInfo.hChris Lattner2002-12-283-3/+3
| | | | llvm-svn: 5199
* Initial checkin of Prolog/Epilog code inserter, which is an important partChris Lattner2002-12-281-0/+247
| | | | | | of the abstract frame representation llvm-svn: 5198
* * Convert to be a MachineFunctionPass instanceChris Lattner2002-12-281-174/+67
| | | | | | | | | | | | | | | | | | * Use new FunctionFrameInfo object to manage stack slots instead of doing it directly * Adjust to new MRegisterInfo API * Don't take a TM as a ctor argument * Don't keep track of which callee saved registers are modified * Don't emit prolog/epilog code or spill/restore code for callee saved regs * Use new allocation_order_begin/end iterators to simplify dramatically the logic for picking registers to allocate * Machine PHI nodes can no longer contain constant arguments * Use a bitvector to keep track of registers used instead of a set * Fix problem where explicitly referenced registers would be added to regsused set and never removed llvm-svn: 5196
* * Convert to be a MachineFunctionPass instanceChris Lattner2002-12-281-196/+64
| | | | | | | | | | | | | | * Use new FunctionFrameInfo object to manage stack slots instead of doing it directly * Adjust to new MRegisterInfo API * Don't take a TM as a ctor argument * Don't keep track of which callee saved registers are modified * Don't emit prolog/epilog code or spill/restore code for callee saved regs * Use new allocation_order_begin/end iterators to simplify dramatically the logic for picking registers to allocate * Machine PHI nodes can no longer contain constant arguments llvm-svn: 5195
* * Add printing support for FrameIndex operandsChris Lattner2002-12-281-24/+29
| | | | llvm-svn: 5194
* * A bunch of functionality and data was removed from MachineFunction and putChris Lattner2002-12-281-48/+84
| | | | | | | into a new MachineFunctionInfo class * Implement new FunctionFrameInfo class llvm-svn: 5193
* Frame info moved out of MachineFunction into a seperate objectChris Lattner2002-12-281-6/+7
| | | | llvm-svn: 5192
* Adjust to simpler spill interfaceChris Lattner2002-12-251-35/+64
| | | | | | Only spill and reload caller saved registers that are actually modified. llvm-svn: 5145
* Adjustments to work with the simpler spill interfaceChris Lattner2002-12-251-22/+24
| | | | llvm-svn: 5144
* Remove dependency on SSARegMap.h by MachineFunction.hChris Lattner2002-12-251-8/+19
| | | | llvm-svn: 5143
* Substantial fixes to live range handling, fixing several problems, gettingChris Lattner2002-12-241-27/+35
| | | | | | strtol to not miscompile, and fixing bug: 2002-12-23-LocalRAProblem.llx llvm-svn: 5132
* Fix compilation on GCC 2.96Chris Lattner2002-12-231-1/+1
| | | | llvm-svn: 5113
* * Fix several register aliasing bugsChris Lattner2002-12-181-39/+148
| | | | | | | * Add a new option to eliminate spilling of registers that are only used within a basic block. llvm-svn: 5106
* Implicit defs/uses list may be empty.Chris Lattner2002-12-181-6/+6
| | | | llvm-svn: 5103
* Use new reginfo interfaceChris Lattner2002-12-172-34/+66
| | | | llvm-svn: 5099
* Add prolog/epilog spills/reloads to countersChris Lattner2002-12-171-4/+7
| | | | | | Move X86 specific alignment gunk to X86 files llvm-svn: 5096
* Fix many bugs, regallocator now saves callee-save registers instead of targetChris Lattner2002-12-171-52/+163
| | | | llvm-svn: 5093
* * Fix a gross X86 hack that was intended to avoid allocating SP and BPChris Lattner2002-12-161-5/+38
| | | | | | * Implement register alias set support llvm-svn: 5082
OpenPOWER on IntegriCloud