[PATCH] D88896: [DebugInfo][InstrRef][3/4] Produce DBG_INSTR_REFs for all* variable locations
    Jeremy Morse via Phabricator via llvm-commits 
    llvm-commits at lists.llvm.org
       
    Mon Jul  5 11:43:21 PDT 2021
    
    
  
jmorse updated this revision to Diff 356540.
jmorse added a subscriber: StephenTozer.
jmorse added a comment.
Reshuffle this patch -- the "fixup half done instruction references" code moves to MachineFunction::finalizeDebugInstrRefs, and I've removed the ignore-widening-subreg-substitutions code. It didn't have any significant effect on variable locations, I think it was just dropping information.
Paging @StephenTozer , I've reshuffled debug instruction emission a little after the variadic-locations work landed -- I've moved single operand emission to `InstrEmitter::EmitDbgValueFromSingleOp`, and no-location emission to `InstrEmitter::EmitDbgNoLocation`. Now, empty variadic variable locations cannonicalise to DBG_VALUE $noreg which casuses a few test changes. arg-dbg-value-list.ll caught my eye -- can variadic locations not recover unused argument values right now? (I imagine this is tied up in the nest of special casing for arguments in SelectionDAG).
CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D88896/new/
https://reviews.llvm.org/D88896
Files:
  llvm/include/llvm/CodeGen/MachineFunction.h
  llvm/lib/CodeGen/MachineFunction.cpp
  llvm/lib/CodeGen/SelectionDAG/InstrEmitter.cpp
  llvm/lib/CodeGen/SelectionDAG/InstrEmitter.h
  llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
  llvm/test/DebugInfo/X86/arg-dbg-value-list.ll
  llvm/test/DebugInfo/X86/dbg-val-list-undef.ll
  llvm/test/DebugInfo/X86/instr-ref-selectiondag.ll
  llvm/test/DebugInfo/X86/invalidated-dbg-value-is-undef.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D88896.356540.patch
Type: text/x-patch
Size: 29611 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210705/1979f8f6/attachment-0001.bin>
    
    
More information about the llvm-commits
mailing list