summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen/RegAllocLinearScan.cpp
Commit message (Expand)AuthorAgeFilesLines
...
* Fix comments in PhysRegTracker and rename isPhysRegAvail to isRegAvail to be ...Alkis Evlogimenos2004-02-231-1/+1
* Pull PhysRegTracker out of RegAllocLinearScan as it can be used by other allo...Alkis Evlogimenos2004-02-231-59/+13
* Move LiveIntervals.h to lib/CodeGen since it shouldn't be exposed to other pa...Alkis Evlogimenos2004-02-231-1/+3
* Print basic block boundaries in machine instruction debug output.Alkis Evlogimenos2004-02-221-0/+1
* Fix crash in debug output.Alkis Evlogimenos2004-02-201-1/+1
* Fix instruction numbering in debug output.Alkis Evlogimenos2004-02-201-1/+2
* Too many changes in one commit:Alkis Evlogimenos2004-02-201-97/+135
* Fix RA::verifyAssignment()Alkis Evlogimenos2004-02-191-4/+8
* Rename reloads/spills to loads/stores.Alkis Evlogimenos2004-02-191-5/+5
* Implement assignment correctness verification.Alkis Evlogimenos2004-02-181-0/+15
* Eliminate the use of spill (reserved) registers.Alkis Evlogimenos2004-02-151-303/+214
* Use std::numeric_limits<float>::infinity() instead ofAlkis Evlogimenos2004-02-141-1/+1
* Remove getAllocatedRegNum(). Use getReg() instead.Alkis Evlogimenos2004-02-131-1/+1
* Change MachineBasicBlock's vector of MachineInstr pointers into anAlkis Evlogimenos2004-02-121-11/+10
* Do not use MachineOperand::isVirtualRegister either!Chris Lattner2004-02-101-5/+8
* Increase code clarity.Alkis Evlogimenos2004-02-061-127/+100
* Eliminate uneeded lookups by passing a Virt2PhysMap::iterator insteadAlkis Evlogimenos2004-02-061-23/+33
* Modify the two address instruction pass to remove the duplicateAlkis Evlogimenos2004-02-041-29/+27
* When an instruction like: A += B had both A and B virtual registersAlkis Evlogimenos2004-02-031-10/+6
* Fix debugging output.Alkis Evlogimenos2004-02-021-1/+1
* Create an object for tracking physical register usage. This will lookAlkis Evlogimenos2004-02-021-106/+116
* Change weight array into a vector and make it as big as the number ofAlkis Evlogimenos2004-02-011-17/+25
* Use std::map::count() instead of std::map::find() != std::map::end()Alkis Evlogimenos2004-02-011-5/+3
* Use MRegisterInfo::isPhysicalRegister andAlkis Evlogimenos2004-02-011-22/+22
* Add option to join live intervals. Two intervals are joined if thereAlkis Evlogimenos2004-01-221-4/+63
* Remove unneeded check. An interval in active, by definition overlapsAlkis Evlogimenos2004-01-221-4/+1
* Improve debugging output. Remove unneeded virtReg->0 mapping whenAlkis Evlogimenos2004-01-221-20/+31
* Handle printing of intervals that are not assign to any physicalAlkis Evlogimenos2004-01-161-1/+1
* Handle printing of intervals that are not assign to any physicalAlkis Evlogimenos2004-01-161-6/+7
* Fold open interval ends handling intoAlkis Evlogimenos2004-01-161-10/+4
* Improve debugging output.Alkis Evlogimenos2004-01-141-2/+3
* Indentation and whitespace cleanups.Alkis Evlogimenos2004-01-131-9/+9
* Fix bug introduced by previous commit: check if fixed intervalsAlkis Evlogimenos2004-01-131-0/+3
* Add a separate list of fixed intervals. This improves the running timeAlkis Evlogimenos2004-01-071-64/+111
* Minor cleanups.Alkis Evlogimenos2004-01-071-29/+3
* Remove declared but undefined method.Alkis Evlogimenos2004-01-071-5/+0
* Remove simple coalescing.Alkis Evlogimenos2004-01-051-11/+0
* Reserve ECX and EDI instead of EBX and EDI. Since EBX is a calleeAlkis Evlogimenos2003-12-281-8/+8
* Add coalescing to register allocator. A hint is added to each intervalAlkis Evlogimenos2003-12-281-1/+12
* Improve debugging output when choosing a register to spill.Alkis Evlogimenos2003-12-241-8/+3
* Change the way free regusters are computed and perform betterAlkis Evlogimenos2003-12-231-130/+77
* Remove verifyIntervals() since it doesn't actually work right now.Alkis Evlogimenos2003-12-211-52/+0
* Change weight into a float so that we can take into account theAlkis Evlogimenos2003-12-211-10/+17
* Add support for inactive intervals. This effectively reuses registersAlkis Evlogimenos2003-12-211-237/+323
* Prune some #includesChris Lattner2003-12-181-3/+2
* Modify linear scan register allocator to use the two-addressAlkis Evlogimenos2003-12-181-76/+37
* Fix bug in reserved registers. DH actually aliases DX and EDX whichAlkis Evlogimenos2003-12-181-2/+2
* Rename LiveIntervals::expired() to LiveIntervals::expiredAt().Alkis Evlogimenos2003-12-181-1/+1
* Change interface of MachineOperand as follows:Alkis Evlogimenos2003-12-141-7/+6
* When reserving a preallocated register spill the aliases of thisAlkis Evlogimenos2003-12-131-0/+16
OpenPOWER on IntegriCloud