[DebugInfo] Fix DWARF expressions for __block vars that are not on the heap
`__block` variables used to be always stored on the head instead of stack. D51564 allowed `__block` variables to the stored on the stack like normal variablesif they not captured by any escaping block, but the debug-info generation code wasn't made aware of it so we still unconditionally emit DWARF expressions pointing to the heap. This patch makes CGDebugInfo use the `EscapingByref` introduced in D51564 that tracks whether the `__block` variable is actually on the heap. If it's stored on the stack instead we just use the debug info we would generate for normal variables instead. Reviewed By: ahatanak, aprantl Differential Revision: https://reviews.llvm.org/D99946
Loading
Please sign in to comment