aboutsummaryrefslogtreecommitdiff
path: root/lib/CodeGen/SplitKit.cpp
AgeCommit message (Expand)Author
2011-06-30Reapply r134047 now that the world is ready for it.Jakob Stoklund Olesen
2011-06-29Revert r134047 while investigating a llvm-gcc-i386-linux-selfhostJakob Stoklund Olesen
2011-06-29Rewrite RAGreedy::splitAroundRegion, now with cool ASCII art.Jakob Stoklund Olesen
2011-06-28Fix a bad iterator dereference that Evan uncovered.Jakob Stoklund Olesen
2011-06-26There is only one register coalescer. Merge it into the base class andRafael Espindola
2011-05-30Reapply r132245 with a fix for the bug that broke the darwin9/i386 build.Jakob Stoklund Olesen
2011-05-29Revert r132245, "Create two BlockInfo entries when a live range is discontinu...Jakob Stoklund Olesen
2011-05-28Create two BlockInfo entries when a live range is discontinuous through a block.Jakob Stoklund Olesen
2011-05-28Add SplitAnalysis::getNumLiveBlocks().Jakob Stoklund Olesen
2011-05-10Fix PR9883. Make sure all caches are invalidated when a live range is repaired.Jakob Stoklund Olesen
2011-05-05Add some statistics to the splitting and spilling frameworks.Jakob Stoklund Olesen
2011-05-03Gracefully handle invalid live ranges. Fix PR9831.Jakob Stoklund Olesen
2011-05-02Minimize the slot indexes spanned by register ranges created when splitting.Jakob Stoklund Olesen
2011-04-26Add a safe-guard against repeated splitting for some rare cases.Jakob Stoklund Olesen
2011-04-21Don't recycle loop variables.Matt Beaumont-Gay
2011-04-21Allow allocatable ranges from global live range splitting to be split again.Jakob Stoklund Olesen
2011-04-16Unbreak the MSVC 2010 build.Francois Pichet
2011-04-15Teach the SplitKit blitter to handle multiply defined values as well.Jakob Stoklund Olesen
2011-04-13Stop using dead function.Jakob Stoklund Olesen
2011-04-12Create new intervals for isolated blocks during region splitting.Jakob Stoklund Olesen
2011-04-12Add SplitKit API to query and select the current interval being worked on.Jakob Stoklund Olesen
2011-04-09Build the Hopfield network incrementally when splitting global live ranges.Jakob Stoklund Olesen
2011-04-06Analyze blocks with uses separately from live-through blocks without uses.Jakob Stoklund Olesen
2011-04-05Sign errorJakob Stoklund Olesen
2011-04-05Don't crash when a value is defined after the last split point.Jakob Stoklund Olesen
2011-04-05Use std::unique instead of a SmallPtrSet to ensure unique instructions in Use...Jakob Stoklund Olesen
2011-04-05Stop precomputing last split points, query the SplitAnalysis cache on demand.Jakob Stoklund Olesen
2011-04-05Cache the fairly expensive last split point computation and provide a fastJakob Stoklund Olesen
2011-04-04Stop caching basic block index ranges now that SlotIndexes can keep up.Jakob Stoklund Olesen
2011-03-29Recompute register class and hint for registers created during spilling.Jakob Stoklund Olesen
2011-03-29Handle the special case when all uses follow the last split point.Jakob Stoklund Olesen
2011-03-27Amend debug output.Jakob Stoklund Olesen
2011-03-20Process all dead defs after rematerializing during splitting.Jakob Stoklund Olesen
2011-03-18Be more accurate about the slot index reading a register when dealing with defsJakob Stoklund Olesen
2011-03-17Dead code elimination may separate the live interval into multiple connected ...Jakob Stoklund Olesen
2011-03-17Rewrite instructions as part of ConnectedVNInfoEqClasses::Distribute.Jakob Stoklund Olesen
2011-03-15Preserve both isPHIDef and isDefByCopy bits when copying parent values.Jakob Stoklund Olesen
2011-03-08Delete dead code after rematerializing.Jakob Stoklund Olesen
2011-03-05Work around a coalescer bug.Jakob Stoklund Olesen
2011-03-04Tweak debug output. No functional changes.Jakob Stoklund Olesen
2011-03-04Use an IndexedMap instead of a DenseMap for the live-out cache.Jakob Stoklund Olesen
2011-03-03Cache basic block bounds instead of asking SlotIndexes::getMBBRange all the t...Jakob Stoklund Olesen
2011-03-03Change the SplitEditor interface to a single instance can be shared for multi...Jakob Stoklund Olesen
2011-03-03Only run the updateSSA loop when we have actually seen multiple values.Jakob Stoklund Olesen
2011-03-02Turn the Edit member into a pointer so it can change dynamically.Jakob Stoklund Olesen
2011-03-02Transfer simply defined values directly without recomputing liveness and SSA.Jakob Stoklund Olesen
2011-03-02Extract a method. No functional change.Jakob Stoklund Olesen
2011-03-02Move extendRange() into SplitEditor and delete the LiveRangeMap class.Jakob Stoklund Olesen
2011-03-02Rename mapValue to extendRange because that is its function now.Jakob Stoklund Olesen
2011-03-02Move LiveIntervalMap::extendTo into LiveInterval itself.Jakob Stoklund Olesen