33// RUN: %target-swift-frontend -parse-as-library -disable-availability-checking -g -c %s -o %t/out.o
44// RUN: %llvm-dwarfdump --show-children %t/out.o | %FileCheck -check-prefix=DWARF %s
55
6- // REQUIRES: rdar91467528
7-
86// This test checks that:
97//
108// 1. At the IR level, we insert the appropriate llvm.dbg.addr, llvm.dbg.value.
@@ -43,19 +41,19 @@ public func forceSplit() async {}
4341
4442// CHECK-LABEL: define swifttailcc void @"$s27move_function_dbginfo_async13letSimpleTestyyxnYalF"(%swift.context* swiftasync %0, %swift.opaque* noalias %1, %swift.type* %T)
4543// CHECK: entry:
46- // CHECK: call void @llvm.dbg.addr(metadata %swift.context* %0 , metadata ![[SIMPLE_TEST_METADATA:[0-9]+]], metadata !DIExpression(DW_OP_plus_uconst, 16, DW_OP_plus_uconst, 8, DW_OP_deref)), !dbg ![[ADDR_LOC:[0-9]+]]
44+ // CHECK: call void @llvm.dbg.addr(metadata %swift.context* %{{[0-9]+}} , metadata ![[SIMPLE_TEST_METADATA:[0-9]+]], metadata !DIExpression(DW_OP_plus_uconst, 16, DW_OP_plus_uconst, 8, DW_OP_deref)), !dbg ![[ADDR_LOC:[0-9]+]]
4745// CHECK: musttail call swifttailcc void
4846// CHECK-NEXT: ret void
4947
5048// CHECK-LABEL: define internal swifttailcc void @"$s27move_function_dbginfo_async13letSimpleTestyyxnYalFTQ0_"(i8* swiftasync %0)
5149// CHECK: entryresume.0:
52- // CHECK: call void @llvm.dbg.addr(metadata i8* %0 , metadata ![[SIMPLE_TEST_METADATA_2:[0-9]+]], metadata !DIExpression(DW_OP_deref, DW_OP_plus_uconst, 16, DW_OP_plus_uconst, 8, DW_OP_deref)),
50+ // CHECK: call void @llvm.dbg.addr(metadata i8* %{{[0-9]+}} , metadata ![[SIMPLE_TEST_METADATA_2:[0-9]+]], metadata !DIExpression(DW_OP_deref, DW_OP_plus_uconst, 16, DW_OP_plus_uconst, 8, DW_OP_deref)),
5351// CHECK: musttail call swifttailcc void
5452// CHECK-NEXT: ret void
5553//
5654// CHECK-LABEL: define internal swifttailcc void @"$s27move_function_dbginfo_async13letSimpleTestyyxnYalFTY1_"(i8* swiftasync %0)
5755// CHECK: entryresume.1:
58- // CHECK: call void @llvm.dbg.addr(metadata i8* %0 , metadata ![[SIMPLE_TEST_METADATA_3:[0-9]+]], metadata !DIExpression(DW_OP_plus_uconst, 16, DW_OP_plus_uconst, 8, DW_OP_deref)), !dbg ![[ADDR_LOC:[0-9]+]]
56+ // CHECK: call void @llvm.dbg.addr(metadata i8* %{{[0-9]+}} , metadata ![[SIMPLE_TEST_METADATA_3:[0-9]+]], metadata !DIExpression(DW_OP_plus_uconst, 16, DW_OP_plus_uconst, 8, DW_OP_deref)), !dbg ![[ADDR_LOC:[0-9]+]]
5957// CHECK: call void @llvm.dbg.value(metadata %swift.opaque* undef, metadata ![[SIMPLE_TEST_METADATA_3]], metadata !DIExpression(DW_OP_deref)), !dbg ![[ADDR_LOC]]
6058// CHECK: musttail call swifttailcc void
6159// CHECK-NEXT: ret void
@@ -83,21 +81,21 @@ public func letSimpleTest<T>(_ msg: __owned T) async {
8381}
8482
8583// CHECK-LABEL: define swifttailcc void @"$s27move_function_dbginfo_async13varSimpleTestyyxz_xtYalF"(%swift.context* swiftasync %0, %swift.opaque* %1, %swift.opaque* noalias %2, %swift.type* %T)
86- // CHECK: call void @llvm.dbg.addr(metadata %swift.context* %0 , metadata !{{[0-9]+}}, metadata !DIExpression(DW_OP_plus_uconst, 16, DW_OP_plus_uconst, 8, DW_OP_deref))
84+ // CHECK: call void @llvm.dbg.addr(metadata %swift.context* %{{[0-9]+}} , metadata !{{[0-9]+}}, metadata !DIExpression(DW_OP_plus_uconst, 16, DW_OP_plus_uconst, 8, DW_OP_deref))
8785// CHECK: musttail call swifttailcc void @"$s27move_function_dbginfo_async10forceSplityyYaF"(%swift.context* swiftasync %{{[0-9]+}})
8886// CHECK-NEXT: ret void
8987// CHECK-NEXT: }
9088//
9189// CHECK-LABEL: define internal swifttailcc void @"$s27move_function_dbginfo_async13varSimpleTestyyxz_xtYalFTQ0_"(i8* swiftasync %0)
9290// CHECK: entryresume.0:
93- // CHECK: call void @llvm.dbg.addr(metadata i8* %0 , metadata !{{[0-9]+}}, metadata !DIExpression(DW_OP_deref, DW_OP_plus_uconst, 16, DW_OP_plus_uconst, 8, DW_OP_deref))
94- // CHECK: musttail call swifttailcc void @swift_task_switch(%swift.context* swiftasync %9 , i8* bitcast (void (i8*)* @"$s27move_function_dbginfo_async13varSimpleTestyyxz_xtYalFTY1_" to i8*), i64 0, i64 0)
91+ // CHECK: call void @llvm.dbg.addr(metadata i8* %{{[0-9]+}} , metadata !{{[0-9]+}}, metadata !DIExpression(DW_OP_deref, DW_OP_plus_uconst, 16, DW_OP_plus_uconst, 8, DW_OP_deref))
92+ // CHECK: musttail call swifttailcc void @swift_task_switch(%swift.context* swiftasync %{{[0-9]+}} , i8* bitcast (void (i8*)* @"$s27move_function_dbginfo_async13varSimpleTestyyxz_xtYalFTY1_" to i8*), i64 0, i64 0)
9593// CHECK-NEXT: ret void
9694// CHECK-NEXT: }
9795//
9896// CHECK-LABEL: define internal swifttailcc void @"$s27move_function_dbginfo_async13varSimpleTestyyxz_xtYalFTY1_"(i8* swiftasync %0)
9997// CHECK: entryresume.1:
100- // CHECK: call void @llvm.dbg.addr(metadata i8* %0 , metadata ![[METADATA:[0-9]+]], metadata !DIExpression(DW_OP_plus_uconst, 16, DW_OP_plus_uconst, 8, DW_OP_deref)), !dbg ![[ADDR_LOC:[0-9]+]]
98+ // CHECK: call void @llvm.dbg.addr(metadata i8* %{{[0-9]+}} , metadata ![[METADATA:[0-9]+]], metadata !DIExpression(DW_OP_plus_uconst, 16, DW_OP_plus_uconst, 8, DW_OP_deref)), !dbg ![[ADDR_LOC:[0-9]+]]
10199// CHECK: call void @llvm.dbg.value(metadata %swift.opaque* undef, metadata ![[METADATA]], metadata !DIExpression(DW_OP_deref)), !dbg ![[ADDR_LOC]]
102100// CHECK: musttail call swifttailcc void @"$s27move_function_dbginfo_async10forceSplityyYaF"(%swift.context* swiftasync
103101// CHECK-NEXT: ret void
@@ -108,9 +106,9 @@ public func letSimpleTest<T>(_ msg: __owned T) async {
108106
109107// CHECK-LABEL: define internal swifttailcc void @"$s27move_function_dbginfo_async13varSimpleTestyyxz_xtYalFTY3_"(i8* swiftasync %0)
110108// CHECK: entryresume.3:
111- // CHECK: call void @llvm.dbg.addr(metadata i8* %0 , metadata ![[METADATA:[0-9]+]], metadata !DIExpression(DW_OP_plus_uconst, 16, DW_OP_plus_uconst, 8, DW_OP_deref)), !dbg ![[ADDR_LOC:[0-9]+]]
109+ // CHECK: call void @llvm.dbg.addr(metadata i8* %{{[0-9]+}} , metadata ![[METADATA:[0-9]+]], metadata !DIExpression(DW_OP_plus_uconst, 16, DW_OP_plus_uconst, 8, DW_OP_deref)), !dbg ![[ADDR_LOC:[0-9]+]]
112110// CHECK: call void @llvm.dbg.value(metadata %swift.opaque* undef, metadata ![[METADATA]], metadata !DIExpression(DW_OP_deref)), !dbg ![[ADDR_LOC]]
113- // CHECK: call void @llvm.dbg.addr(metadata i8* %0 , metadata ![[METADATA]], metadata !DIExpression(DW_OP_plus_uconst, 16, DW_OP_plus_uconst, 8, DW_OP_deref)), !dbg ![[ADDR_LOC]]
111+ // CHECK: call void @llvm.dbg.addr(metadata i8* %{{[0-9]+}} , metadata ![[METADATA]], metadata !DIExpression(DW_OP_plus_uconst, 16, DW_OP_plus_uconst, 8, DW_OP_deref)), !dbg ![[ADDR_LOC]]
114112// CHECK: musttail call swifttailcc void @"$s27move_function_dbginfo_async10forceSplityyYaF"(
115113// CHECK-NEXT: ret void
116114// CHECK-NEXT: }
@@ -192,13 +190,13 @@ public func varSimpleTest<T>(_ msg: inout T, _ msg2: T) async {
192190// CHECK-NOT: llvm.dbg.addr
193191//
194192// CHECK-LABEL: define internal swifttailcc void @"$s27move_function_dbginfo_async16varSimpleTestVaryyYaFTY0_"(i8* swiftasync %0)
195- // CHECK: call void @llvm.dbg.addr(metadata i8* %0 , metadata !{{[0-9]+}}, metadata !DIExpression(DW_OP_plus_uconst, 16, DW_OP_plus_uconst, 8))
193+ // CHECK: call void @llvm.dbg.addr(metadata i8* %{{[0-9]+}} , metadata !{{[0-9]+}}, metadata !DIExpression(DW_OP_plus_uconst, 16, DW_OP_plus_uconst, 8))
196194//
197195// CHECK-LABEL: define internal swifttailcc void @"$s27move_function_dbginfo_async16varSimpleTestVaryyYaFTQ1_"(i8* swiftasync %0)
198- // CHECK: call void @llvm.dbg.addr(metadata i8* %0 , metadata !{{[0-9]+}}, metadata !DIExpression(DW_OP_deref, DW_OP_plus_uconst, 16, DW_OP_plus_uconst, 8))
196+ // CHECK: call void @llvm.dbg.addr(metadata i8* %{{[0-9]+}} , metadata !{{[0-9]+}}, metadata !DIExpression(DW_OP_deref, DW_OP_plus_uconst, 16, DW_OP_plus_uconst, 8))
199197
200198// CHECK-LABEL: define internal swifttailcc void @"$s27move_function_dbginfo_async16varSimpleTestVaryyYaFTY2_"(i8* swiftasync %0)
201- // CHECK: call void @llvm.dbg.addr(metadata i8* %0 , metadata ![[METADATA:[0-9]+]], metadata !DIExpression(DW_OP_plus_uconst, 16, DW_OP_plus_uconst, 8)), !dbg ![[ADDR_LOC:[0-9]+]]
199+ // CHECK: call void @llvm.dbg.addr(metadata i8* %{{[0-9]+}} , metadata ![[METADATA:[0-9]+]], metadata !DIExpression(DW_OP_plus_uconst, 16, DW_OP_plus_uconst, 8)), !dbg ![[ADDR_LOC:[0-9]+]]
202200// CHECK: call void @llvm.dbg.value(metadata %T27move_function_dbginfo_async5KlassC** undef, metadata ![[METADATA]], metadata !DIExpression()), !dbg ![[ADDR_LOC]]
203201
204202// CHECK-LABEL: define internal swifttailcc void @"$s27move_function_dbginfo_async16varSimpleTestVaryyYaFTQ3_"(i8* swiftasync %0)
@@ -212,7 +210,7 @@ public func varSimpleTest<T>(_ msg: inout T, _ msg2: T) async {
212210//
213211// CHECK-LABEL: define internal swifttailcc void @"$s27move_function_dbginfo_async16varSimpleTestVaryyYaFTY4_"(i8* swiftasync %0)
214212// CHECK: call void @llvm.dbg.value(metadata %T27move_function_dbginfo_async5KlassC** undef, metadata ![[METADATA:[0-9]+]], metadata !DIExpression()), !dbg ![[ADDR_LOC:[0-9]+]]
215- // CHECK: call void @llvm.dbg.addr(metadata i8* %0 , metadata ![[METADATA]], metadata !DIExpression(DW_OP_plus_uconst, 16, DW_OP_plus_uconst, 8)), !dbg ![[ADDR_LOC]]
213+ // CHECK: call void @llvm.dbg.addr(metadata i8* %{{[0-9]+}} , metadata ![[METADATA]], metadata !DIExpression(DW_OP_plus_uconst, 16, DW_OP_plus_uconst, 8)), !dbg ![[ADDR_LOC]]
216214
217215// We are not an argument, so no problem here.
218216//
0 commit comments