llvm/llvm/test/DebugInfo/MIR/InstrRef/substitusions-roundtrip.mir

# RUN: llc %s -march=x86-64 -run-pass=machineverifier \
# RUN:     -experimental-debug-variable-locations -o - 2>&1 | FileCheck %s
#
# REQUIRES: x86-registered-target
#
# CHECK:      debugValueSubstitutions:
# CHECK-NEXT: - { srcinst: 1, srcop: 0, dstinst: 2, dstop: 0, subreg: 0 }
#
# CHECK:      MOV64rr $rdi, debug-instr-number 2
# CHECK-NEXT: DBG_INSTR_REF dbg-instr-ref(1, 0)
---
name: test
tracksRegLiveness: true
debugInstrRef: true
liveins:
  - { reg: '$rdi', virtual-reg: '' }
debugValueSubstitutions:
  - { srcinst: 1, srcop: 0, dstinst: 2, dstop: 0, subreg: 0 }
body:  |
  bb.0:
  liveins: $rdi, $rax
    $rbp = MOV64rr $rdi, debug-instr-number 2
    DBG_INSTR_REF dbg-instr-ref(1, 0)
    dead $rcx = MOV64ri 0
    CMP64ri8 renamable $rax, 1, implicit-def $eflags
    RET64 $rax
...