Gitiles
Code Review
Sign In
gerrit-public.fairphone.software
/
toolchain
/
llvm-project
/
5dc87d0f4d631b6701471649c0abc7045be8d5cd
/
llvm
/
lib
/
CodeGen
/
SplitKit.cpp
cdf9ad9
Delete getMultiUseBlocks and splitSingleBlocks.
by Jakob Stoklund Olesen
· 14 years ago
8627ea9
Split around single instructions to enable register class inflation.
by Jakob Stoklund Olesen
· 14 years ago
43859a6
Rename {First,Last}Use to {First,Last}Instr.
by Jakob Stoklund Olesen
· 14 years ago
ae8027c
Add a BlockInfo::FirstDef field.
by Jakob Stoklund Olesen
· 14 years ago
f047ff4
Delete BlockInfo::LiveThrough. It wasn't used any more.
by Jakob Stoklund Olesen
· 14 years ago
73a9eb9
Never extend live ranges for <undef> uses.
by Jakob Stoklund Olesen
· 14 years ago
56a56eb
Correctly handle <undef> tied uses when rewriting after a split.
by Jakob Stoklund Olesen
· 14 years ago
f500cce
Fix bug in SplitEditor::splitLiveThroughBlock when switching registers.
by Jakob Stoklund Olesen
· 14 years ago
c45d38e
Fix a crash when building 177.mesa for armv6.
by Jakob Stoklund Olesen
· 14 years ago
26909d8
Silence unused variable warning
by Matt Beaumont-Gay
· 14 years ago
37e3a13
He said *before* the last split point.
by Jakob Stoklund Olesen
· 14 years ago
795da1c
Extract parts of RAGreedy::splitAroundRegion as SplitKit methods.
by Jakob Stoklund Olesen
· 14 years ago
adc6a4c
Reapply r134047 now that the world is ready for it.
by Jakob Stoklund Olesen
· 14 years ago
8628435
Revert r134047 while investigating a llvm-gcc-i386-linux-selfhost miscompile.
by Jakob Stoklund Olesen
· 14 years ago
ffbc05b
Rewrite RAGreedy::splitAroundRegion, now with cool ASCII art.
by Jakob Stoklund Olesen
· 14 years ago
040d659
Fix a bad iterator dereference that Evan uncovered.
by Jakob Stoklund Olesen
· 14 years ago
676c405
There is only one register coalescer. Merge it into the base class and
by Rafael Espindola
· 14 years ago
ec43d5d
Reapply r132245 with a fix for the bug that broke the darwin9/i386 build.
by Jakob Stoklund Olesen
· 14 years ago
ca6a4d8
Revert r132245, "Create two BlockInfo entries when a live range is discontinuous through a block."
by Jakob Stoklund Olesen
· 14 years ago
fd3f71e
Create two BlockInfo entries when a live range is discontinuous through a block.
by Jakob Stoklund Olesen
· 14 years ago
5cc91b2
Add SplitAnalysis::getNumLiveBlocks().
by Jakob Stoklund Olesen
· 14 years ago
50215af
Fix PR9883. Make sure all caches are invalidated when a live range is repaired.
by Jakob Stoklund Olesen
· 14 years ago
c5a8c08
Add some statistics to the splitting and spilling frameworks.
by Jakob Stoklund Olesen
· 15 years ago
eaa6ed1
Gracefully handle invalid live ranges. Fix PR9831.
by Jakob Stoklund Olesen
· 15 years ago
7d40679
Minimize the slot indexes spanned by register ranges created when splitting.
by Jakob Stoklund Olesen
· 15 years ago
eef2327
Add a safe-guard against repeated splitting for some rare cases.
by Jakob Stoklund Olesen
· 15 years ago
70597d4
Don't recycle loop variables.
by Matt Beaumont-Gay
· 15 years ago
6a663b8
Allow allocatable ranges from global live range splitting to be split again.
by Jakob Stoklund Olesen
· 15 years ago
beb17d9
Unbreak the MSVC 2010 build.
by Francois Pichet
· 15 years ago
1af8b4d
Teach the SplitKit blitter to handle multiply defined values as well.
by Jakob Stoklund Olesen
· 15 years ago
cda53fe
Stop using dead function.
by Jakob Stoklund Olesen
· 15 years ago
c70b697
Create new intervals for isolated blocks during region splitting.
by Jakob Stoklund Olesen
· 15 years ago
0840f50
Add SplitKit API to query and select the current interval being worked on.
by Jakob Stoklund Olesen
· 15 years ago
ed47ed4
Build the Hopfield network incrementally when splitting global live ranges.
by Jakob Stoklund Olesen
· 15 years ago
bf91c4e
Analyze blocks with uses separately from live-through blocks without uses.
by Jakob Stoklund Olesen
· 15 years ago
858afbb
Sign error
by Jakob Stoklund Olesen
· 15 years ago
5c482cd
Don't crash when a value is defined after the last split point.
by Jakob Stoklund Olesen
· 15 years ago
fe6e07f
Use std::unique instead of a SmallPtrSet to ensure unique instructions in UseSlots.
by Jakob Stoklund Olesen
· 15 years ago
d93b0e3
Stop precomputing last split points, query the SplitAnalysis cache on demand.
by Jakob Stoklund Olesen
· 15 years ago
50b2db8
Cache the fairly expensive last split point computation and provide a fast
by Jakob Stoklund Olesen
· 15 years ago
8933907
Stop caching basic block index ranges now that SlotIndexes can keep up.
by Jakob Stoklund Olesen
· 15 years ago
e991f72
Recompute register class and hint for registers created during spilling.
by Jakob Stoklund Olesen
· 15 years ago
12877b8
Handle the special case when all uses follow the last split point.
by Jakob Stoklund Olesen
· 15 years ago
bd6b86e
Amend debug output.
by Jakob Stoklund Olesen
· 15 years ago
3550242
Process all dead defs after rematerializing during splitting.
by Jakob Stoklund Olesen
· 15 years ago
c099dde
Be more accurate about the slot index reading a register when dealing with defs
by Jakob Stoklund Olesen
· 15 years ago
8630840
Dead code elimination may separate the live interval into multiple connected components.
by Jakob Stoklund Olesen
· 15 years ago
315b42c
Rewrite instructions as part of ConnectedVNInfoEqClasses::Distribute.
by Jakob Stoklund Olesen
· 15 years ago
32210de
Preserve both isPHIDef and isDefByCopy bits when copying parent values.
by Jakob Stoklund Olesen
· 15 years ago
ea5ebfe
Delete dead code after rematerializing.
by Jakob Stoklund Olesen
· 15 years ago
27e0a4a
Work around a coalescer bug.
by Jakob Stoklund Olesen
· 15 years ago
d4f7889
Tweak debug output. No functional changes.
by Jakob Stoklund Olesen
· 15 years ago
1a69e23
Use an IndexedMap instead of a DenseMap for the live-out cache.
by Jakob Stoklund Olesen
· 15 years ago
9a6382f
Cache basic block bounds instead of asking SlotIndexes::getMBBRange all the time.
by Jakob Stoklund Olesen
· 15 years ago
c960198
Change the SplitEditor interface to a single instance can be shared for multiple splits.
by Jakob Stoklund Olesen
· 15 years ago
5ea0712
Only run the updateSSA loop when we have actually seen multiple values.
by Jakob Stoklund Olesen
· 15 years ago
815196c
Turn the Edit member into a pointer so it can change dynamically.
by Jakob Stoklund Olesen
· 15 years ago
503b143
Transfer simply defined values directly without recomputing liveness and SSA.
by Jakob Stoklund Olesen
· 15 years ago
3648263
Extract a method. No functional change.
by Jakob Stoklund Olesen
· 15 years ago
48af892
Move extendRange() into SplitEditor and delete the LiveRangeMap class.
by Jakob Stoklund Olesen
· 15 years ago
b023761
Rename mapValue to extendRange because that is its function now.
by Jakob Stoklund Olesen
· 15 years ago
9e326a8
Move LiveIntervalMap::extendTo into LiveInterval itself.
by Jakob Stoklund Olesen
· 15 years ago
2b09bed
Delete dead code.
by Jakob Stoklund Olesen
· 15 years ago
8ef91fc
Move the value map from LiveIntervalMap to SplitEditor.
by Jakob Stoklund Olesen
· 15 years ago
977e3d3
Delete dead code.
by Jakob Stoklund Olesen
· 15 years ago
ed17299
It is safe to ignore LastSplitPoint when the variable is not live out.
by Jakob Stoklund Olesen
· 15 years ago
60a26a6
Add SplitKit::isOriginalEndpoint and use it to force live range splitting to terminate.
by Jakob Stoklund Olesen
· 15 years ago
f1a60a6
Give SplitAnalysis a VRM member to access VirtRegMap::getOriginal().
by Jakob Stoklund Olesen
· 15 years ago
04aff70
Missed member rename for naming convention.
by Jakob Stoklund Olesen
· 15 years ago
8dafc87
Delete unused code for analyzing and splitting around loops.
by Jakob Stoklund Olesen
· 15 years ago
7cb57b3
Use the LiveBLocks array for SplitEditor::splitSingleBlocks() as well.
by Jakob Stoklund Olesen
· 15 years ago
b1b76ad
Move calcLiveBlockInfo() and the BlockInfo struct into SplitAnalysis.
by Jakob Stoklund Olesen
· 15 years ago
f6e0394
Ignore <undef> uses when analyzing and rewriting.
by Jakob Stoklund Olesen
· 15 years ago
1749935
Add SplitEditor::overlapIntv() to create small ranges where both registers are live.
by Jakob Stoklund Olesen
· 15 years ago
3d11c8e
Add assertion.
by Jakob Stoklund Olesen
· 15 years ago
096bd88
Add LiveIntervals::getLastSplitPoint().
by Jakob Stoklund Olesen
· 15 years ago
3295a99
Skip unused values.
by Jakob Stoklund Olesen
· 15 years ago
d8f62e2
Add debug output and asserts to the phi-connecting code.
by Jakob Stoklund Olesen
· 15 years ago
8c02548
Fix coloring bug when mapping values in the middle of a live-through block.
by Jakob Stoklund Olesen
· 15 years ago
f12e120
Return live range end points from SplitEditor::enter*/leave*.
by Jakob Stoklund Olesen
· 15 years ago
ede6267
Reapply this.
by Eric Christopher
· 15 years ago
2193353
Temporarily revert 124765 in an attempt to find the cycle breaking bootstrap.
by Eric Christopher
· 15 years ago
dca2917
Defer SplitKit value mapping until all defs are available.
by Jakob Stoklund Olesen
· 15 years ago
b308902
Rename member variables to follow the rest of LLVM. No functional change.
by Jakob Stoklund Olesen
· 15 years ago
04e6b3b
Add LiveIntervalMap::dumpCache() to print out the cache used by the ssa update algorithm.
by Jakob Stoklund Olesen
· 15 years ago
9fb0401
Implement RAGreedy::splitAroundRegion and remove loop splitting.
by Jakob Stoklund Olesen
· 15 years ago
267f6c1
Add RAGreedy methods for splitting live ranges around regions.
by Jakob Stoklund Olesen
· 15 years ago
f96ae68
Turn the EdgeBundles class into a stand-alone machine CFG analysis pass.
by Jakob Stoklund Olesen
· 15 years ago
29836e6
Include a shadow of the original CFG edges in the edge bundle graph.
by Jakob Stoklund Olesen
· 15 years ago
2530cd2
Add EdgeBundles to SplitKit.
by Jakob Stoklund Olesen
· 15 years ago
7971a3e
Check that the register is live-in to the loop header before inserting copies in
by Jakob Stoklund Olesen
· 15 years ago
1066ef6
Fix build.
by Jakob Stoklund Olesen
· 15 years ago
28e769c
Detect and enumerate bypass loops.
by Jakob Stoklund Olesen
· 15 years ago
4391f34
Separate SplitAnalysis::getSplitLoops().
by Jakob Stoklund Olesen
· 15 years ago
3cb87f4
No need to add liveness that's already there.
by Jakob Stoklund Olesen
· 15 years ago
6ee7d9aa
Basic rematerialization during splitting.
by Jakob Stoklund Olesen
· 15 years ago
cbbd819
Tag debug output as regalloc
by Jakob Stoklund Olesen
· 15 years ago
1e32688
When inserting copies during splitting, always use the parent register as the
by Jakob Stoklund Olesen
· 15 years ago
a5d4b4f
Update kill flags while rewriting instructions after splitting.
by Jakob Stoklund Olesen
· 15 years ago
0cfc497
Make sure copies are inserted after any exception handling labels at the top of
by Jakob Stoklund Olesen
· 15 years ago
Next »