HomePhabricator

[DebugInfo] Emit DBG_VALUE_LIST from ISel

Authored by StephenTozer on Sep 29 2020, 7:54 AM.

Description

[DebugInfo] Emit DBG_VALUE_LIST from ISel

This patch completes ISel support for DIArgList dbg.values by allowing
SDDbgValues with multiple location operands to be emitted as DBG_VALUE_LIST
instructions.

The primary change of this patch is refactoring EmitDbgValue by pulling location
operand emission out to the new function AddDbgValueLocationOps, which is used
for both DIArgList and single value dbg.values. Outside of that, the only
behaviour change is that the scheduler has a lambda added, HasUnknownVReg, to
prevent us from attempting to emit a DBG_VALUE_LIST before all of its used VRegs
have become available.

Differential Revision: https://reviews.llvm.org/D88592

Details

Committed
StephenTozerMar 9 2021, 4:17 AM
Differential Revision
D88592: [DebugInfo] Emit DBG_VALUE_LIST from ISel
Parents
rG98f1564b8857: [lld][MachO] Add missing test requirements
Branches
Unknown
Tags
Unknown