summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen/RegAllocSimple.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* Implicit defs/uses list may be empty.Chris Lattner2002-12-181-6/+6
| | | | llvm-svn: 5103
* Use new reginfo interfaceChris Lattner2002-12-171-3/+59
| | | | llvm-svn: 5099
* Keep the stack frame aligned.Chris Lattner2002-12-161-0/+4
| | | | llvm-svn: 5081
* Rename createSimpleX86RegisterAllocator to createSimpleRegisterAllocator.Chris Lattner2002-12-161-28/+2
| | | | | | Remvoe some dead code llvm-svn: 5070
* Some simpliciations to the spill/reload interfaceChris Lattner2002-12-151-25/+21
| | | | llvm-svn: 5067
* Simplify PHI node elimination significantly by doing it as a prepass toChris Lattner2002-12-151-30/+13
| | | | | | register allocation llvm-svn: 5066
* Variety of small or trivial simplifications to the code, completely eliminatedChris Lattner2002-12-151-92/+68
| | | | | | the dependence on PhysRegClassMap llvm-svn: 5064
* Remove unused savePhysRegToStack methodChris Lattner2002-12-151-28/+4
| | | | llvm-svn: 5061
* Localize a map, remove anotherChris Lattner2002-12-151-9/+3
| | | | llvm-svn: 5060
* Give simple reg allocator a nice Pass NameChris Lattner2002-12-151-1/+5
| | | | llvm-svn: 5058
* Add a big assert making sure 2 address instructions are formed rightChris Lattner2002-12-151-0/+6
| | | | llvm-svn: 5057
* Fix a problem that occurs when PHI nodes have multiple entries for the same ↵Chris Lattner2002-12-151-30/+47
| | | | | | predecessor llvm-svn: 5055
* Grab bag of minor cleanups. Export some statistics about the number ofChris Lattner2002-12-151-46/+56
| | | | | | spills and reloads emitted llvm-svn: 5054
* Simplify interfaces used by regalloc to insert codeChris Lattner2002-12-151-9/+6
| | | | llvm-svn: 5052
* * Simplify code a bit by breaking the PHI node handling stuff out into a ↵Chris Lattner2002-12-151-152/+161
| | | | | | | | | | seperate function from normal regalloc code * Make the regalloc for a block a function instead of part of runOnMachineBB, which makes it easier to see what's going on in runOnMBB. llvm-svn: 5051
* * Remove some unneccesary instance variablesChris Lattner2002-12-151-19/+16
| | | | | | * Make allocateStackSpaceFor only allocate the right amount of space llvm-svn: 5048
* pull inverse reg class mapping into a class that is sharable and out of theChris Lattner2002-12-151-6/+28
| | | | | | target register description classes. llvm-svn: 5045
* Prune #includesChris Lattner2002-12-151-8/+2
| | | | llvm-svn: 5044
* Remove extraneous #includes, perform FIXMEChris Lattner2002-12-151-10/+6
| | | | llvm-svn: 5043
* Fix borkness with not using MachineBasicBlocks in PHI nodesChris Lattner2002-12-151-12/+1
| | | | llvm-svn: 5035
* Fixed a bug where moves due to phis were being neglected.Misha Brukman2002-12-131-23/+19
| | | | llvm-svn: 5019
* Need to insert all moves due to PHI nodes before *ALL* jumps in a predecessorMisha Brukman2002-12-131-15/+10
| | | | | | basic block, as there could be multiple. llvm-svn: 5016
* This should be more correct: invalidates physical registers that are used inMisha Brukman2002-12-131-4/+41
| | | | | | an instruction to avoid using them to allocate to other virtual registers. llvm-svn: 5013
* Fixed bug with running out of registers. Also, reinstated namespace whichMisha Brukman2002-12-131-2/+5
| | | | | | disappeared during the last checkin. llvm-svn: 5007
* This should handle register allocating PHI nodes.Misha Brukman2002-12-131-23/+97
| | | | llvm-svn: 5002
* Start allocating stack space at [ebp-4] to not overwrite the return address.Misha Brukman2002-12-131-2/+9
| | | | | | Also make all loads & stores 4-byte aligned for performance. ;) llvm-svn: 4982
* Take advantage of our knowledge of 2-address X86 instructions andMisha Brukman2002-12-121-7/+24
| | | | | | register-allocated them appropriately. llvm-svn: 4976
* Added code generation for function prologues and epilogues.Misha Brukman2002-12-041-17/+32
| | | | llvm-svn: 4930
* Fun arithmetic with iterators aimed at fixing a bug: inserting instructionsMisha Brukman2002-12-041-2/+4
| | | | | | | after the *current* instruction while keeping the iterator in the same 'logical' place. llvm-svn: 4923
* This should fix the bug seen with some registers not being allocatedMisha Brukman2002-12-031-6/+45
| | | | | | | | | | | correctly: skipping instructions by incorrectly incrementing the pointer. Also adds support for building a reg-to-regclass map, and splits the function for saving register to stack into two, one suitable for virtual registers (which also assigns it a physical register) and one for simply storing back physical registers. llvm-svn: 4898
* * Abstracted out stack space allocation into its own functionMisha Brukman2002-12-021-34/+36
| | | | | | * Added saving of register values to the stack llvm-svn: 4858
* A simple (spilling) register allocator.Misha Brukman2002-11-221-0/+219
llvm-svn: 4828
OpenPOWER on IntegriCloud