diff options
author | Stephen Tozer <Stephen.Tozer@Sony.com> | 2021-03-04 12:02:28 +0000 |
---|---|---|
committer | Stephen Tozer <Stephen.Tozer@Sony.com> | 2021-03-05 12:32:05 +0000 |
commit | f677413071a2df10fbb68050624696fd4d4ae1cd (patch) | |
tree | ab4cb1f19b521092c0316ca29ff8aade8d6a6fd5 /llvm/lib/CodeGen/MachineRegisterInfo.cpp | |
parent | c52fe0b02172e707aa2ba38cd2e01a1fc70dd0da (diff) | |
download | llvm-f677413071a2df10fbb68050624696fd4d4ae1cd.zip llvm-f677413071a2df10fbb68050624696fd4d4ae1cd.tar.gz llvm-f677413071a2df10fbb68050624696fd4d4ae1cd.tar.bz2 |
Reapply "[DebugInfo] Add new instruction and DIExpression operator for variadic debug values"
Rewrites test to use correct architecture triple; fixes incorrect
reference in SourceLevelDebugging doc; simplifies `spillReg` behaviour
so as to not be dependent on changes elsewhere in the patch stack.
This reverts commit d2000b45d033c06dc7973f59909a0ad12887ff51.
Diffstat (limited to 'llvm/lib/CodeGen/MachineRegisterInfo.cpp')
-rw-r--r-- | llvm/lib/CodeGen/MachineRegisterInfo.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/llvm/lib/CodeGen/MachineRegisterInfo.cpp b/llvm/lib/CodeGen/MachineRegisterInfo.cpp index d7444ec..58bb866 100644 --- a/llvm/lib/CodeGen/MachineRegisterInfo.cpp +++ b/llvm/lib/CodeGen/MachineRegisterInfo.cpp @@ -530,11 +530,11 @@ bool MachineRegisterInfo::isConstantPhysReg(MCRegister PhysReg) const { /// specified register as undefined which causes the DBG_VALUE to be /// deleted during LiveDebugVariables analysis. void MachineRegisterInfo::markUsesInDebugValueAsUndef(Register Reg) const { - // Mark any DBG_VALUE that uses Reg as undef (but don't delete it.) + // Mark any DBG_VALUE* that uses Reg as undef (but don't delete it.) // We use make_early_inc_range because setReg invalidates the iterator. for (MachineInstr &UseMI : llvm::make_early_inc_range(use_instructions(Reg))) { - if (UseMI.isDebugValue()) - UseMI.getDebugOperandForReg(Reg)->setReg(0U); + if (UseMI.isDebugValue() && UseMI.hasDebugOperandForReg(Reg)) + UseMI.setDebugValueUndef(); } } |