[all-commits] [llvm/llvm-project] da0faa: [DebugInfo] Produce variadic DBG_INSTR_REFs from ISel

Stephen Tozer via All-commits all-commits at lists.llvm.org
Mon Jan 9 00:59:06 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: da0faa0594b9df6d401d1e5686ff32766148b075
      https://github.com/llvm/llvm-project/commit/da0faa0594b9df6d401d1e5686ff32766148b075
  Author: Stephen Tozer <Stephen.Tozer at Sony.com>
  Date:   2023-01-09 (Mon, 09 Jan 2023)

  Changed paths:
    M llvm/include/llvm/IR/DebugInfoMetadata.h
    M llvm/lib/CodeGen/MachineFunction.cpp
    M llvm/lib/CodeGen/SelectionDAG/FastISel.cpp
    M llvm/lib/CodeGen/SelectionDAG/InstrEmitter.cpp
    M llvm/lib/CodeGen/SelectionDAG/InstrEmitter.h
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/IR/DebugInfoMetadata.cpp
    M llvm/test/CodeGen/X86/pr57673.ll
    M llvm/test/DebugInfo/X86/arg-dbg-value-list.ll
    M llvm/test/DebugInfo/X86/dbg-val-list-undef.ll
    M llvm/test/DebugInfo/X86/instr-ref-sdag-empty-vreg.ll
    M llvm/test/DebugInfo/X86/instr-ref-selectiondag.ll
    M llvm/test/DebugInfo/X86/invalidated-dbg-value-is-undef.ll
    M llvm/test/DebugInfo/X86/safestack-byval.ll
    M llvm/unittests/IR/MetadataTest.cpp

  Log Message:
  -----------
  [DebugInfo] Produce variadic DBG_INSTR_REFs from ISel

This patch modifies SelectionDAG and FastISel to produce DBG_INSTR_REFs with
variadic expressions, and produce DBG_INSTR_REFs for debug values with variadic
location expressions. The former essentially means just prepending
DW_OP_LLVM_arg, 0 to the existing expression. The latter is achieved in
MachineFunction::finalizeDebugInstrRefs and InstrEmitter::EmitDbgInstrRef.

Reviewed By: jmorse, Orlando

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




More information about the All-commits mailing list