Gitiles
Code Review
Sign In
gerrit-public.fairphone.software
/
fp2-dev
/
platform
/
external
/
llvm
/
6c8afd728eb02742ce320ecd39bcf3774d8423b7
/
lib
/
CodeGen
/
SplitKit.h
6c8afd7
Stop caching basic block index ranges now that SlotIndexes can keep up.
by Jakob Stoklund Olesen
· 14 years ago
5c4c4d4
Delete leftover data members.
by Jakob Stoklund Olesen
· 14 years ago
2254227
Rewrite instructions as part of ConnectedVNInfoEqClasses::Distribute.
by Jakob Stoklund Olesen
· 14 years ago
5881799
Delete dead code after rematerializing.
by Jakob Stoklund Olesen
· 14 years ago
2b0f9e7
Work around a coalescer bug.
by Jakob Stoklund Olesen
· 14 years ago
13ba2da
Use an IndexedMap instead of a DenseMap for the live-out cache.
by Jakob Stoklund Olesen
· 14 years ago
36d6186
Cache basic block bounds instead of asking SlotIndexes::getMBBRange all the time.
by Jakob Stoklund Olesen
· 14 years ago
bece06f
Change the SplitEditor interface to a single instance can be shared for multiple splits.
by Jakob Stoklund Olesen
· 14 years ago
a2cae58
Turn the Edit member into a pointer so it can change dynamically.
by Jakob Stoklund Olesen
· 14 years ago
4670353
Transfer simply defined values directly without recomputing liveness and SSA.
by Jakob Stoklund Olesen
· 14 years ago
e2dc0c9
Extract a method. No functional change.
by Jakob Stoklund Olesen
· 14 years ago
1c38ba6
Move extendRange() into SplitEditor and delete the LiveRangeMap class.
by Jakob Stoklund Olesen
· 14 years ago
d3fdaeb
Rename mapValue to extendRange because that is its function now.
by Jakob Stoklund Olesen
· 14 years ago
9763e2b
Move LiveIntervalMap::extendTo into LiveInterval itself.
by Jakob Stoklund Olesen
· 14 years ago
edb8755
Delete dead code.
by Jakob Stoklund Olesen
· 14 years ago
670ccd1
Move the value map from LiveIntervalMap to SplitEditor.
by Jakob Stoklund Olesen
· 14 years ago
3afab9c
Delete dead code.
by Jakob Stoklund Olesen
· 14 years ago
06c0f25
Add SplitKit::isOriginalEndpoint and use it to force live range splitting to terminate.
by Jakob Stoklund Olesen
· 14 years ago
1b847de
Give SplitAnalysis a VRM member to access VirtRegMap::getOriginal().
by Jakob Stoklund Olesen
· 14 years ago
0eeca44
Missed member rename for naming convention.
by Jakob Stoklund Olesen
· 14 years ago
034a80d
Split local live ranges.
by Jakob Stoklund Olesen
· 14 years ago
4f5c9d2
Delete unused code for analyzing and splitting around loops.
by Jakob Stoklund Olesen
· 15 years ago
9b05777
Use the LiveBLocks array for SplitEditor::splitSingleBlocks() as well.
by Jakob Stoklund Olesen
· 15 years ago
f0ac26c
Move calcLiveBlockInfo() and the BlockInfo struct into SplitAnalysis.
by Jakob Stoklund Olesen
· 15 years ago
5c716bd
Add SplitEditor::overlapIntv() to create small ranges where both registers are live.
by Jakob Stoklund Olesen
· 15 years ago
207c868
Return live range end points from SplitEditor::enter*/leave*.
by Jakob Stoklund Olesen
· 15 years ago
0f43811
Reapply this.
by Eric Christopher
· 15 years ago
463a297
Temporarily revert 124765 in an attempt to find the cycle breaking bootstrap.
by Eric Christopher
· 15 years ago
2cd2111
Defer SplitKit value mapping until all defs are available.
by Jakob Stoklund Olesen
· 15 years ago
0786284
Rename member variables to follow the rest of LLVM. No functional change.
by Jakob Stoklund Olesen
· 15 years ago
d7ca577
Add LiveIntervalMap::dumpCache() to print out the cache used by the ssa update algorithm.
by Jakob Stoklund Olesen
· 15 years ago
b5fa933
Add RAGreedy methods for splitting live ranges around regions.
by Jakob Stoklund Olesen
· 15 years ago
8dd070e
Turn the EdgeBundles class into a stand-alone machine CFG analysis pass.
by Jakob Stoklund Olesen
· 15 years ago
8d0963f
Add EdgeBundles to SplitKit.
by Jakob Stoklund Olesen
· 15 years ago
697483a
Detect and enumerate bypass loops.
by Jakob Stoklund Olesen
· 15 years ago
521a453
Separate SplitAnalysis::getSplitLoops().
by Jakob Stoklund Olesen
· 15 years ago
cfa7134
Basic rematerialization during splitting.
by Jakob Stoklund Olesen
· 15 years ago
3d4114c
When inserting copies during splitting, always use the parent register as the
by Jakob Stoklund Olesen
· 15 years ago
e1dde7b
Replace SplitKit SSA update with an iterative algorithm very similar to the one
by Jakob Stoklund Olesen
· 15 years ago
d68f458
Make MachineDominators available for SplitEditor. We are going to need it for
by Jakob Stoklund Olesen
· 15 years ago
c95c146
Handle critical loop predecessors by making both inside and outside registers
by Jakob Stoklund Olesen
· 15 years ago
0960a65
Compute critical loop predecessors in the same way as critical loop exits.
by Jakob Stoklund Olesen
· 15 years ago
14e8d71
This is a prototype of an experimental register allocation
by Andrew Trick
· 15 years ago
532de3d
Add print methods
by Jakob Stoklund Olesen
· 15 years ago
50cef58
Remove unused accessor.
by Jakob Stoklund Olesen
· 15 years ago
9d5d48b
Eliminate curli from SplitEditor. Use the LiveRangeEdit reference instead.
by Jakob Stoklund Olesen
· 15 years ago
a17768f
Create a new LiveRangeEdit class to keep track of the new registers created when
by Jakob Stoklund Olesen
· 15 years ago
7466927
Rename SplitEditor::rewrite to finish() and break it out into a couple of new
by Jakob Stoklund Olesen
· 15 years ago
fc3ef3c
Remove SplitAnalysis::removeUse. It was only used to make SplitAnalysis
by Jakob Stoklund Olesen
· 15 years ago
57d0f2d
Update SplitEditor API to reflect the fact that the original live interval is
by Jakob Stoklund Olesen
· 15 years ago
fc60d77
Don't use nextIndex to check for live out of instruction.
by Jakob Stoklund Olesen
· 15 years ago
5fa42a4
Build the complement interval dupli after the split intervals instead of
by Jakob Stoklund Olesen
· 15 years ago
f6a129a
Use the value mapping provided by LiveIntervalMap. This simplifies the code a
by Jakob Stoklund Olesen
· 15 years ago
dd9f3fd
Mechanically replace LiveInterval* with LiveIntervalMap for intervals being
by Jakob Stoklund Olesen
· 15 years ago
9ca2aeb
Allow LiveIntervalMap to be reused by resetting the current live interval.
by Jakob Stoklund Olesen
· 15 years ago
ff3ae86
Thinking about it, we don't need MachineDominatorTree after all. The DomValue
by Jakob Stoklund Olesen
· 15 years ago
1407c84
Add the LiveIntervalMap class. Don't hook it up yet.
by Jakob Stoklund Olesen
· 15 years ago
0a2b2a1
Clean up the Spiller.h interface.
by Jakob Stoklund Olesen
· 15 years ago
fc412d8
Implement splitting inside a single block.
by Jakob Stoklund Olesen
· 15 years ago
2dee7a5
Update the SplitAnalysis statistics as uses are moved from curli to the new
by Jakob Stoklund Olesen
· 15 years ago
f1b05f2
Implement single block splitting.
by Jakob Stoklund Olesen
· 15 years ago
08e93b1
Recalculate the spill weight and allocation hint for virtual registers created
by Jakob Stoklund Olesen
· 15 years ago
5eb308b
Lazily defer duplicating the live interval we are splitting until we know it is
by Jakob Stoklund Olesen
· 15 years ago
7536f72
Checkpoint SplitKit progress.
by Jakob Stoklund Olesen
· 15 years ago
f017900
Add SplitEditor to SplitKit. This class will be used to edit live intervals and
by Jakob Stoklund Olesen
· 15 years ago
f2c6e36
Change the createSpiller interface to take a MachineFunctionPass argument.
by Jakob Stoklund Olesen
· 15 years ago
6a0dc07
Implement loop splitting analysis.
by Jakob Stoklund Olesen
· 15 years ago
abff280
Appease the colonials.
by Jakob Stoklund Olesen
· 15 years ago
8ae0263
Beginning SplitKit - utility classes for live range splitting.
by Jakob Stoklund Olesen
· 15 years ago