[PATCH] D38068: [DebugInfo] Use a DenseMap to coalesce MachineOperand locations
Reid Kleckner via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Sep 19 18:09:45 PDT 2017
rnk created this revision.
Herald added a subscriber: hiraditya.
The new code should be linear in the number of DBG_VALUEs, while the old
code was quadratic.
This is also hopefully a more direct expression of the problem, which
is to:
1. Rewrite all virtual register operands to stack slots or physical registers
2. Uniquely number those machine operands, assigning them location numbers
3. Rewrite all uses of the old location numbers in the interval map to use the new location numbers
In r313400, I attempted to track which locations were spilled in a
parallel bitvector indexed by location number. My code was broken
because these location numbers are not stable during rewriting.
https://reviews.llvm.org/D38068
Files:
llvm/include/llvm/CodeGen/MachineOperand.h
llvm/lib/CodeGen/LiveDebugVariables.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D38068.115944.patch
Type: text/x-patch
Size: 6812 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170920/78d7f33a/attachment.bin>
More information about the llvm-commits
mailing list