summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen/RegAllocGreedy.cpp
Commit message (Expand)AuthorAgeFilesLines
* Drop RAGreedy::trySpillInterferences().Jakob Stoklund Olesen2011-03-011-70/+0
* Keep track of which stage produced a live range, and bypass earlier stages wh...Jakob Stoklund Olesen2011-03-011-20/+76
* Try harder to get the hint by preferring to evict hint interference.Jakob Stoklund Olesen2011-02-251-0/+3
* Tweak the register allocator priority queue some more.Jakob Stoklund Olesen2011-02-241-10/+22
* Keep track of how many times a live range has been dequeued, and prioritize n...Jakob Stoklund Olesen2011-02-231-0/+7
* Fix a bug in determining if there is only a single interfering register.Jakob Stoklund Olesen2011-02-231-2/+1
* Be more aggressive about evicting interference.Jakob Stoklund Olesen2011-02-231-26/+88
* Change the RAGreedy register assignment order so large live ranges are alloca...Jakob Stoklund Olesen2011-02-221-17/+24
* Add SplitKit::isOriginalEndpoint and use it to force live range splitting to ...Jakob Stoklund Olesen2011-02-211-2/+11
* Give SplitAnalysis a VRM member to access VirtRegMap::getOriginal().Jakob Stoklund Olesen2011-02-191-1/+1
* Separate timers for local and global splitting.Jakob Stoklund Olesen2011-02-191-2/+5
* Add VirtRegMap::rewrite() and use it in the new register allocators.Jakob Stoklund Olesen2011-02-181-3/+1
* Add basic register allocator statistics.Jakob Stoklund Olesen2011-02-171-0/+10
* Split local live ranges.Jakob Stoklund Olesen2011-02-171-2/+277
* Simplify using the new leaveIntvBefore()Jakob Stoklund Olesen2011-02-091-13/+2
* Move calcLiveBlockInfo() and the BlockInfo struct into SplitAnalysis.Jakob Stoklund Olesen2011-02-091-143/+20
* Evict a lighter single interference before attempting to split a live range.Jakob Stoklund Olesen2011-02-091-29/+41
* Fix one more case of splitting after the last split point.Jakob Stoklund Olesen2011-02-081-8/+10
* Reorganize interference code to check LastSplitPoint first.Jakob Stoklund Olesen2011-02-081-29/+43
* Also handle the situation where an indirect branch is the first (and last)Jakob Stoklund Olesen2011-02-081-6/+8
* Add LiveIntervals::addKillFlags() to recompute kill flags after register allo...Jakob Stoklund Olesen2011-02-081-0/+1
* Trim debug spewJakob Stoklund Olesen2011-02-081-1/+0
* Add SplitEditor::overlapIntv() to create small ranges where both registers ar...Jakob Stoklund Olesen2011-02-081-2/+25
* Be more strict about the first/last interference-free use.Jakob Stoklund Olesen2011-02-051-4/+25
* Add assertions to verify that the new interval is clear of the interference.Jakob Stoklund Olesen2011-02-051-7/+14
* Be more accurate about live range splitting at the end of blocks.Jakob Stoklund Olesen2011-02-041-4/+17
* Verify that one of the ranges produced by region splitting is allocatable.Jakob Stoklund Olesen2011-02-041-1/+15
* Also compute interference intervals for blocks with no uses.Jakob Stoklund Olesen2011-02-041-3/+1
* Ensure that the computed interference intervals actually overlap their basic ...Jakob Stoklund Olesen2011-02-031-3/+12
* Return live range end points from SplitEditor::enter*/leave*.Jakob Stoklund Olesen2011-02-031-12/+8
* Reapply this.Eric Christopher2011-02-031-12/+3
* Temporarily revert 124765 in an attempt to find the cycle breaking bootstrap.Eric Christopher2011-02-031-3/+12
* Defer SplitKit value mapping until all defs are available.Jakob Stoklund Olesen2011-02-031-12/+3
* SplitKit requires that all defs are in place before calling useIntv().Jakob Stoklund Olesen2011-01-201-10/+22
* Don't accidentally leave small gaps in the live ranges when leaving the activeJakob Stoklund Olesen2011-01-191-2/+3
* Implement RAGreedy::splitAroundRegion and remove loop splitting.Jakob Stoklund Olesen2011-01-191-98/+290
* Add RAGreedy methods for splitting live ranges around regions.Jakob Stoklund Olesen2011-01-181-0/+340
* Pacify the compiler. BestWeight cannot in fact be used uninitializedDuncan Sands2010-12-281-1/+1
* When RegAllocGreedy decides to spill the interferences of the current register,Jakob Stoklund Olesen2010-12-221-37/+89
* Tweak debug spew.Jakob Stoklund Olesen2010-12-181-2/+4
* Fix GCC warning:Nick Lewycky2010-12-181-0/+1
* Pass a Banner argument to the machine code verifier both fromJakob Stoklund Olesen2010-12-181-2/+2
* Make the -verify-regalloc command line option available to base classes asJakob Stoklund Olesen2010-12-171-0/+6
* Enable loop splitting in RegAllocGreedy.Jakob Stoklund Olesen2010-12-171-23/+64
* Start using SplitKit and MachineLoopRanges in RegAllocGreedy in preparation ofJakob Stoklund Olesen2010-12-151-9/+37
* Simplify RegAllocGreedy's use of register aliases.Jakob Stoklund Olesen2010-12-141-17/+4
* Move debugging code entirely within DEBUG(). Silences an unused variableMatt Beaumont-Gay2010-12-141-8/+8
* Add LiveIntervalUnion print methods, RegAllocGreedy::trySplit debug spew.Jakob Stoklund Olesen2010-12-141-0/+8
* Q.seenAllInterferences() must be called after Q.collectInterferingVRegs().Jakob Stoklund Olesen2010-12-141-2/+4
* Remove unused vector.Jakob Stoklund Olesen2010-12-141-1/+1
OpenPOWER on IntegriCloud