# RUN: llc < %s -run-pass=wasm-reg-stackify -x=mir 2>&1 | FileCheck %s

# CHECK: body:
# CHECK: dead %3:i32 = I32_WRAP_I64 %0,
# CHECK-NEXT: DBG_VALUE %1:i32
# CHECK-NEXT: dead %2:i32 = CALL @bar,
# CHECK-NEXT: DBG_VALUE %1:i32,
# CHECK-NEXT: %[[NEWREG:.*]]:i32 = CALL @bar,
# CHECK-NEXT: DBG_VALUE %[[NEWREG]],
# CHECK-NEXT: CALL @foo, %[[NEWREG]],

--- |
  target datalayout = "e-m:e-p:32:32-i64:64-n32:64-S128"
  target triple = "wasm32-unknown-unknown"

  declare void @foo(i32)
  declare i32 @bar()

  define void @test(i64 %arg) {
    unreachable
  }

  !llvm.dbg.cu = !{!0}
  !llvm.module.flags = !{!4}
  !0 = distinct !DICompileUnit(language: DW_LANG_Rust, file: !2, producer: "clang LLVM (rustc version 1.30.0-dev)", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !1, globals: !1)
  !1 = !{}
  !2 = !DIFile(filename: "<unknown>", directory: "")
  !3 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "&str", file: !2, size: 64, align: 32, elements: !{}, identifier: "111094d970b097647de579f9c509ef08")
  !4 = !{i32 2, !"Debug Info Version", i32 3}
  !5 = distinct !DILexicalBlock(scope: !6, file: !2, line: 357, column: 8)
  !6 = distinct !DISubprogram(name: "testfoo", linkageName: "_testba", scope: !7, file: !2, line: 353, type: !8, isLocal: true, isDefinition: true, scopeLine: 353, flags: DIFlagPrototyped, isOptimized: true, unit: !0, templateParams: !1, retainedNodes: !9)
  !7 = !DINamespace(name: "ptr", scope: null)
  !8 = !DISubroutineType(types: !1)
  !9 = !{!10}
  !10 = !DILocalVariable(name: "val0", scope: !5, file: !2, line: 357, type: !3, align: 4)
  !11 = !DILocalVariable(name: "val1", scope: !5, file: !2, line: 358, type: !3, align: 4)
  !12 = !DILocalVariable(name: "val2", scope: !5, file: !2, line: 359, type: !3, align: 4)
  !13 = !DILocation(line: 357, column: 12, scope: !5)
  !14 = !DILocation(line: 358, column: 12, scope: !5)
  !15 = !DILocation(line: 359, column: 12, scope: !5)

---
name: test
liveins:
  - { reg: '$arguments' }
tracksRegLiveness: true
body: |
  bb.0:
    liveins: $arguments
    %0:i64 = ARGUMENT_i64 0, implicit $arguments
    %1:i32 = I32_WRAP_I64 %0:i64, implicit-def dead $arguments
    DBG_VALUE %1:i32, $noreg, !10, !DIExpression(), debug-location !13; <unknown>:357:12 line no:357
    %1:i32 = CALL @bar, implicit-def dead $arguments, implicit $sp32, implicit $sp64
    DBG_VALUE %1:i32, $noreg, !11, !DIExpression(), debug-location !14; <unknown>:357:12 line no:357
    %1:i32 = CALL @bar, implicit-def dead $arguments, implicit $sp32, implicit $sp64
    DBG_VALUE %1:i32, $noreg, !12, !DIExpression(), debug-location !15; <unknown>:357:12 line no:357
    CALL @foo, %1:i32, implicit-def dead $arguments, implicit $sp32, implicit $sp64
    RETURN implicit-def dead $arguments

...
