This patch adjusts what location is picked for a known variable value -- preferring to leave locations on the stack, even when a value is re-loaded into a register. The benefit is reduced location list entropy, on a clang-3.4 build I found that .debug_loclists reduces in size by 6%, from 29Mb down to 27Mb. Testing: a few tests need the stack slot to be written to explicitly, to force LiveDebugValues into restoring the variable location to a register. I've added an explicit test for the desired behaviour in livedebugvalues_recover_clobbers.mir . Differential Revision: https://reviews.llvm.org/D120732 |
||
|---|---|---|
| .. | ||
| AArch64 | ||
| ARM | ||
| Hexagon | ||
| InstrRef | ||
| Mips | ||
| SystemZ | ||
| X86 | ||
| lit.local.cfg | ||