mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-09-07 16:54:48 +00:00
In the old way, we computed and inserted phi nodes for the whole IDF of the definitions of the alloca, then computed which ones were dead and removed them. In the new method, we first compute the region where the value is live, and use that information to only insert phi nodes that are live. This eliminates the need to compute liveness later, and stops the algorithm from inserting a bunch of phis which it then later removes. This speeds up the testcase in PR1432 from 2.00s to 0.15s (14x) in a release build and 6.84s->0.50s (14x) in a debug build. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@40825 91177308-0d34-0410-b5e6-96231b3b80d8 |
||
---|---|---|
.. | ||
BasicBlockUtils.cpp | ||
BasicInliner.cpp | ||
BreakCriticalEdges.cpp | ||
CloneFunction.cpp | ||
CloneModule.cpp | ||
CloneTrace.cpp | ||
CodeExtractor.cpp | ||
DemoteRegToStack.cpp | ||
InlineCost.cpp | ||
InlineFunction.cpp | ||
LCSSA.cpp | ||
Local.cpp | ||
LoopSimplify.cpp | ||
LowerAllocations.cpp | ||
LowerInvoke.cpp | ||
LowerSelect.cpp | ||
LowerSwitch.cpp | ||
Makefile | ||
Mem2Reg.cpp | ||
PromoteMemoryToRegister.cpp | ||
SimplifyCFG.cpp | ||
UnifyFunctionExitNodes.cpp | ||
ValueMapper.cpp | ||
ValueMapper.h |