11// RUN: %empty-directory(%t)
2- // RUN: %target-swift-frontend -parse-as-library -Xllvm -sil-disable-pass=alloc-stack-hoisting - g -emit-ir -o - %s | %FileCheck %s
3- // RUN: %target-swift-frontend -parse-as-library -Xllvm -sil-disable-pass=alloc-stack-hoisting - g -c %s -o %t/out.o
2+ // RUN: %target-swift-frontend -parse-as-library -g -emit-ir -o - %s | %FileCheck %s
3+ // RUN: %target-swift-frontend -parse-as-library -g -c %s -o %t/out.o
44// RUN: %llvm-dwarfdump --show-children %t/out.o | %FileCheck -check-prefix=DWARF %s
55
66// This test checks that:
@@ -219,10 +219,7 @@ public func copyableVarArgTest(_ k: inout Klass) {
219219}
220220
221221// CHECK-LABEL: define swiftcc void @"$s21move_function_dbginfo20addressOnlyValueTestyyxAA1PRzlF"(%swift.opaque* noalias nocapture %0, %swift.type* %T, i8** %T.P)
222- // CHECK: @llvm.dbg.declare(metadata %swift.type** %T1,
223- // CHECK: @llvm.dbg.declare(metadata %swift.opaque** %x.debug,
224- // CHECK: @llvm.dbg.declare(metadata i8** %m.debug,
225- // CHECK: @llvm.dbg.addr(metadata i8** %k.debug, metadata ![[K_ADDR_LET_METADATA:[0-9]+]], metadata !DIExpression(DW_OP_deref)), !dbg ![[ADDR_LOC:[0-9]*]]
222+ // CHECK: @llvm.dbg.addr(metadata %swift.opaque** %k.debug, metadata ![[K_ADDR_LET_METADATA:[0-9]+]], metadata !DIExpression()), !dbg ![[ADDR_LOC:[0-9]*]]
226223// CHECK-NEXT: br
227224// CHECK: @llvm.dbg.value(metadata %swift.opaque* undef, metadata ![[K_ADDR_LET_METADATA]], metadata !DIExpression()), !dbg ![[ADDR_LOC]]
228225// CHECK: ret void
@@ -312,13 +309,10 @@ public func addressOnlyValueArgTest<T : P>(_ k: __owned T) {
312309}
313310
314311// CHECK-LABEL: define swiftcc void @"$s21move_function_dbginfo18addressOnlyVarTestyyxAA1PRzlF"(%swift.opaque* noalias nocapture %0, %swift.type* %T, i8** %T.P)
315- // CHECK: @llvm.dbg.declare(metadata %swift.type** %T1,
316- // CHECK: @llvm.dbg.declare(metadata %swift.opaque** %x.debug,
317- // CHECK: @llvm.dbg.declare(metadata i8** %m.debug,
318- // CHECK: @llvm.dbg.addr(metadata i8** %k.debug, metadata ![[K_ADDRONLY_VAR_METADATA:[0-9]+]], metadata !DIExpression(DW_OP_deref)), !dbg ![[ADDR_LOC:[0-9]*]]
312+ // CHECK: @llvm.dbg.addr(metadata %swift.opaque** %k.debug, metadata ![[K_ADDRONLY_VAR_METADATA:[0-9]+]], metadata !DIExpression()), !dbg ![[ADDR_LOC:[0-9]*]]
319313// CHECK-NEXT: br
320314// CHECK: @llvm.dbg.value(metadata %swift.opaque* undef, metadata ![[K_ADDRONLY_VAR_METADATA]], metadata !DIExpression()), !dbg ![[ADDR_LOC]]
321- // CHECK: @llvm.dbg.addr(metadata i8 ** %k.debug, metadata ![[K_ADDRONLY_VAR_METADATA]], metadata !DIExpression()), !dbg ![[ADDR_LOC]]
315+ // CHECK: @llvm.dbg.addr(metadata %swift.opaque ** %k.debug, metadata ![[K_ADDRONLY_VAR_METADATA]], metadata !DIExpression()), !dbg ![[ADDR_LOC]]
322316// CHECK-NEXT: br
323317// CHECK: ret void
324318// CHECK-NEXT: }
@@ -344,13 +338,6 @@ public func addressOnlyValueArgTest<T : P>(_ k: __owned T) {
344338// DWARF-NEXT: DW_AT_artificial (true)
345339//
346340// DWARF: DW_TAG_variable
347- // DWARF-NEXT: DW_AT_location (
348- // DWARF-NEXT: DW_AT_name ("m")
349- // DWARF-NEXT: DW_AT_decl_file (
350- // DWARF-NEXT: DW_AT_decl_line (
351- // DWARF-NEXT: DW_AT_type (
352- //
353- // DWARF: DW_TAG_variable
354341// DWARF-NEXT: DW_AT_location (0x{{[a-z0-9]+}}:
355342// DWARF-NEXT: [0x{{[a-z0-9]+}}, 0x{{[a-z0-9]+}}):
356343// TODO: Missing def in dbg info here.
@@ -369,9 +356,6 @@ public func addressOnlyVarTest<T : P>(_ x: T) {
369356}
370357
371358// CHECK-LABEL: define swiftcc void @"$s21move_function_dbginfo21addressOnlyVarArgTestyyxz_xtAA1PRzlF"(
372- // CHECK: call void @llvm.dbg.declare(metadata %swift.type** %T1,
373- // CHECK: call void @llvm.dbg.declare(metadata %swift.opaque** %x.debug,
374- // CHECK: call void @llvm.dbg.declare(metadata i8** %m.debug,
375359// CHECK: call void @llvm.dbg.addr(metadata %swift.opaque** %k.debug, metadata ![[K_ADDRONLY_VAR_METADATA:[0-9]+]], metadata !DIExpression(DW_OP_deref)), !dbg ![[ADDR_LOC:[0-9]*]]
376360// CHECK-NEXT: br
377361// CHECK: @llvm.dbg.value(metadata %swift.opaque* undef, metadata ![[K_ADDRONLY_VAR_METADATA]], metadata !DIExpression(DW_OP_deref)), !dbg ![[ADDR_LOC]]
@@ -408,13 +392,6 @@ public func addressOnlyVarTest<T : P>(_ x: T) {
408392// DWARF-NEXT: DW_AT_name ("$\317\204_0_0")
409393// DWARF-NEXT: DW_AT_type (
410394// DWARF-NEXT: DW_AT_artificial (true)
411- //
412- // DWARF: DW_TAG_variable
413- // DWARF-NEXT: DW_AT_location (
414- // DWARF-NEXT: DW_AT_name ("m")
415- // DWARF-NEXT: DW_AT_decl_file (
416- // DWARF-NEXT: DW_AT_decl_line (
417- // DWARF-NEXT: DW_AT_type (
418395public func addressOnlyVarArgTest< T : P > ( _ k: inout T , _ x: T ) {
419396 k. doSomething ( )
420397 let m = _move ( k)
0 commit comments