@@ -15,7 +15,7 @@ struct Impl: P {
15
15
// CHECK: ret void
16
16
// CHECK: [[FAIL]]:
17
17
// CHECK: call swiftcc void @"$s16typed_throws_abi5EmptyVACycfC"()
18
- // CHECK: [[ERROR_WITNESS:%.*]] = call ptr @"$s16typed_throws_abi5EmptyVACs5ErrorAAWl"() #12
18
+ // CHECK: [[ERROR_WITNESS:%.*]] = call ptr @"$s16typed_throws_abi5EmptyVACs5ErrorAAWl"()
19
19
// CHECK: call swiftcc void @swift_willThrowTyped(ptr noalias undef, ptr getelementptr inbounds (<{ ptr, ptr, i64, ptr }>, ptr @"$s16typed_throws_abi5EmptyVMf", i32 0, i32 2), ptr [[ERROR_WITNESS]])
20
20
// CHECK: store ptr inttoptr (i64 1 to ptr), ptr %2, align 8
21
21
// CHECK: ret void
@@ -32,7 +32,7 @@ struct Impl: P {
32
32
// CHECK: ret i64 1
33
33
// CHECK: [[FAIL]]:
34
34
// CHECK: call swiftcc void @"$s16typed_throws_abi5EmptyVACycfC"()
35
- // CHECK: [[ERROR_WITNESS:%.*]] = call ptr @"$s16typed_throws_abi5EmptyVACs5ErrorAAWl"() #12
35
+ // CHECK: [[ERROR_WITNESS:%.*]] = call ptr @"$s16typed_throws_abi5EmptyVACs5ErrorAAWl"()
36
36
// CHECK: call swiftcc void @swift_willThrowTyped(ptr noalias undef, ptr getelementptr inbounds (<{ ptr, ptr, i64, ptr }>, ptr @"$s16typed_throws_abi5EmptyVMf", i32 0, i32 2), ptr [[ERROR_WITNESS]])
37
37
// CHECK: store ptr inttoptr (i64 1 to ptr), ptr %2, align 8
38
38
// CHECK: ret i64 undef
@@ -50,7 +50,7 @@ struct Impl: P {
50
50
// CHECK: ret { i64, i64 } { i64 1, i64 2 }
51
51
// CHECK: [[FAIL]]:
52
52
// CHECK: call swiftcc void @"$s16typed_throws_abi5EmptyVACycfC"()
53
- // CHECK: [[ERROR_WITNESS:%.*]] = call ptr @"$s16typed_throws_abi5EmptyVACs5ErrorAAWl"() #12
53
+ // CHECK: [[ERROR_WITNESS:%.*]] = call ptr @"$s16typed_throws_abi5EmptyVACs5ErrorAAWl"()
54
54
// CHECK: call swiftcc void @swift_willThrowTyped(ptr noalias undef, ptr getelementptr inbounds (<{ ptr, ptr, i64, ptr }>, ptr @"$s16typed_throws_abi5EmptyVMf", i32 0, i32 2), ptr [[ERROR_WITNESS]])
55
55
// CHECK: store ptr inttoptr (i64 1 to ptr), ptr %2, align 8
56
56
// CHECK: ret { i64, i64 } undef
@@ -68,7 +68,7 @@ struct Impl: P {
68
68
// CHECK: ret { i64, i64, i64 } { i64 1, i64 2, i64 3 }
69
69
// CHECK: [[FAIL]]:
70
70
// CHECK: call swiftcc void @"$s16typed_throws_abi5EmptyVACycfC"()
71
- // CHECK: [[ERROR_WITNESS:%.*]] = call ptr @"$s16typed_throws_abi5EmptyVACs5ErrorAAWl"() #12
71
+ // CHECK: [[ERROR_WITNESS:%.*]] = call ptr @"$s16typed_throws_abi5EmptyVACs5ErrorAAWl"()
72
72
// CHECK: call swiftcc void @swift_willThrowTyped(ptr noalias undef, ptr getelementptr inbounds (<{ ptr, ptr, i64, ptr }>, ptr @"$s16typed_throws_abi5EmptyVMf", i32 0, i32 2), ptr [[ERROR_WITNESS]])
73
73
// CHECK: store ptr inttoptr (i64 1 to ptr), ptr %2, align 8
74
74
// CHECK: ret { i64, i64, i64 } undef
@@ -86,7 +86,7 @@ struct Impl: P {
86
86
// CHECK: ret { i64, i64, i64, i64 } { i64 1, i64 2, i64 3, i64 4 }
87
87
// CHECK: [[FAIL]]:
88
88
// CHECK: call swiftcc void @"$s16typed_throws_abi5EmptyVACycfC"()
89
- // CHECK: [[ERROR_WITNESS:%.*]] = call ptr @"$s16typed_throws_abi5EmptyVACs5ErrorAAWl"() #12
89
+ // CHECK: [[ERROR_WITNESS:%.*]] = call ptr @"$s16typed_throws_abi5EmptyVACs5ErrorAAWl"()
90
90
// CHECK: call swiftcc void @swift_willThrowTyped(ptr noalias undef, ptr getelementptr inbounds (<{ ptr, ptr, i64, ptr }>, ptr @"$s16typed_throws_abi5EmptyVMf", i32 0, i32 2), ptr [[ERROR_WITNESS]])
91
91
// CHECK: store ptr inttoptr (i64 1 to ptr), ptr %2, align 8
92
92
// CHECK: ret { i64, i64, i64, i64 } undef
@@ -109,7 +109,7 @@ struct Impl: P {
109
109
// CHECK: ret void
110
110
// CHECK: [[FAIL]]:
111
111
// CHECK: call swiftcc void @"$s16typed_throws_abi5EmptyVACycfC"()
112
- // CHECK: [[ERROR_WITNESS:%.*]] = call ptr @"$s16typed_throws_abi5EmptyVACs5ErrorAAWl"() #12
112
+ // CHECK: [[ERROR_WITNESS:%.*]] = call ptr @"$s16typed_throws_abi5EmptyVACs5ErrorAAWl"()
113
113
// CHECK: call swiftcc void @swift_willThrowTyped(ptr noalias undef, ptr getelementptr inbounds (<{ ptr, ptr, i64, ptr }>, ptr @"$s16typed_throws_abi5EmptyVMf", i32 0, i32 2), ptr [[ERROR_WITNESS]])
114
114
// CHECK: store ptr inttoptr (i64 1 to ptr), ptr %3, align 8
115
115
// CHECK: ret void
@@ -215,7 +215,7 @@ struct Impl: P {
215
215
return ( 1 , 2 , 3 , 4 )
216
216
}
217
217
218
- // CHECK: define hidden swiftcc void @"$s16typed_throws_abi4ImplV2g5ySi_S4itSbAA7OneWordVYKF"(ptr noalias nocapture sret(<{ %TSi, %TSi, %TSi, %TSi, %TSi }>) %0, i1 %1, ptr swiftself %2, ptr noalias nocapture swifterror dereferenceable(8) %3, ptr %4) #0 {
218
+ // CHECK: define hidden swiftcc void @"$s16typed_throws_abi4ImplV2g5ySi_S4itSbAA7OneWordVYKF"(ptr noalias nocapture sret(<{ %TSi, %TSi, %TSi, %TSi, %TSi }>) %0, i1 %1, ptr swiftself %2, ptr noalias nocapture swifterror dereferenceable(8) %3, ptr %4)
219
219
// CHECK: entry:
220
220
// CHECK: [[ERROR:%.*]] = alloca %T16typed_throws_abi7OneWordV, align 8
221
221
// CHECK: br i1 %1, label %[[SUCCESS:.*]], label %[[FAIL:.*]]
@@ -677,7 +677,7 @@ func callImpl_g5(_ impl: Impl, _ b: Bool) -> (Int, Int, Int, Int, Int) {
677
677
@available ( SwiftStdlib 6 . 0 , * )
678
678
struct ImplAsync : PAsync {
679
679
680
- // CHECK: define hidden swifttailcc void @"$s16typed_throws_abi9ImplAsyncV2f0yySbYaAA5EmptyVYKF"(ptr swiftasync %0, i1 %1) #0 {
680
+ // CHECK: define hidden swifttailcc void @"$s16typed_throws_abi9ImplAsyncV2f0yySbYaAA5EmptyVYKF"(ptr swiftasync %0, i1 %1)
681
681
// CHECK: [[CORO:%.*]] = call ptr @llvm.coro.begin(token {{%.*}}, ptr null)
682
682
// CHECK: br i1 %1, label %[[SUCCESS:.*]], label %[[FAIL:.*]]
683
683
// CHECK: [[SUCCESS]]:
@@ -700,13 +700,13 @@ struct ImplAsync: PAsync {
700
700
// CHECK: [[CORO:%.*]] = call ptr @llvm.coro.begin(token {{%.*}}, ptr null)
701
701
// CHECK: br i1 %1, label %[[SUCCESS:.*]], label %[[FAIL:.*]]
702
702
// CHECK: [[SUCCESS]]:
703
- // CHECK: %16 = call i1 (ptr, i1, ...) @llvm.coro.end.async(ptr [[CORO]], i1 false, ptr @"{{.*}}", ptr {{%.*}}, ptr {{%.*}}, i64 1, ptr null)
703
+ // CHECK: call i1 (ptr, i1, ...) @llvm.coro.end.async(ptr [[CORO]], i1 false, ptr @"{{.*}}", ptr {{%.*}}, ptr {{%.*}}, i64 1, ptr null)
704
704
// CHECK: unreachable
705
705
// CHECK: [[FAIL]]:
706
706
// CHECK: call swiftcc void @"$s16typed_throws_abi5EmptyVACycfC"()
707
707
// CHECK: [[ERROR_WITNESS:%.*]] = call ptr @"$s16typed_throws_abi5EmptyVACs5ErrorAAWl"()
708
708
// CHECK: call swiftcc void @swift_willThrowTyped(ptr noalias undef, ptr getelementptr inbounds (<{ ptr, ptr, i64, ptr }>, ptr @"$s16typed_throws_abi5EmptyVMf", i32 0, i32 2), ptr [[ERROR_WITNESS]])
709
- // CHECK: %23 = call i1 (ptr, i1, ...) @llvm.coro.end.async(ptr [[CORO]], i1 false, ptr @"{{.*}}", ptr {{%.*}}, ptr {{%.*}}, i64 undef, ptr inttoptr (i64 1 to ptr))
709
+ // CHECK: call i1 (ptr, i1, ...) @llvm.coro.end.async(ptr [[CORO]], i1 false, ptr @"{{.*}}", ptr {{%.*}}, ptr {{%.*}}, i64 undef, ptr inttoptr (i64 1 to ptr))
710
710
// CHECK: unreachable
711
711
// CHECK: }
712
712
func f1( _ b: Bool ) async throws ( Empty) -> Int {
@@ -720,13 +720,13 @@ struct ImplAsync: PAsync {
720
720
// CHECK: [[CORO:%.*]] = call ptr @llvm.coro.begin(token {{%.*}}, ptr null)
721
721
// CHECK: br i1 %1, label %[[SUCCESS:.*]], label %[[FAIL:.*]]
722
722
// CHECK: [[SUCCESS]]:
723
- // CHECK: %16 = call i1 (ptr, i1, ...) @llvm.coro.end.async(ptr [[CORO]], i1 false, ptr @"{{.*}}", ptr {{%.*}}, ptr {{%.*}}, i64 1, i64 2, ptr null)
723
+ // CHECK: call i1 (ptr, i1, ...) @llvm.coro.end.async(ptr [[CORO]], i1 false, ptr @"{{.*}}", ptr {{%.*}}, ptr {{%.*}}, i64 1, i64 2, ptr null)
724
724
// CHECK: unreachable
725
725
// CHECK: [[FAIL]]:
726
726
// CHECK: call swiftcc void @"$s16typed_throws_abi5EmptyVACycfC"()
727
727
// CHECK: [[ERROR_WITNESS:%.*]] = call ptr @"$s16typed_throws_abi5EmptyVACs5ErrorAAWl"()
728
728
// CHECK: call swiftcc void @swift_willThrowTyped(ptr noalias undef, ptr getelementptr inbounds (<{ ptr, ptr, i64, ptr }>, ptr @"$s16typed_throws_abi5EmptyVMf", i32 0, i32 2), ptr [[ERROR_WITNESS]])
729
- // CHECK: %23 = call i1 (ptr, i1, ...) @llvm.coro.end.async(ptr [[CORO]], i1 false, ptr @"{{.*}}", ptr {{%.*}}, ptr {{%.*}}, i64 undef, i64 undef, ptr inttoptr (i64 1 to ptr))
729
+ // CHECK: call i1 (ptr, i1, ...) @llvm.coro.end.async(ptr [[CORO]], i1 false, ptr @"{{.*}}", ptr {{%.*}}, ptr {{%.*}}, i64 undef, i64 undef, ptr inttoptr (i64 1 to ptr))
730
730
// CHECK: unreachable
731
731
// CHECK: }
732
732
func f2( _ b: Bool ) async throws ( Empty) -> ( Int , Int ) {
@@ -740,13 +740,13 @@ struct ImplAsync: PAsync {
740
740
// CHECK: [[CORO:%.*]] = call ptr @llvm.coro.begin(token {{%.*}}, ptr null)
741
741
// CHECK: br i1 %1, label %[[SUCCESS:.*]], label %[[FAIL:.*]]
742
742
// CHECK: [[SUCCESS]]:
743
- // CHECK: %16 = call i1 (ptr, i1, ...) @llvm.coro.end.async(ptr [[CORO]], i1 false, ptr @"{{.*}}", ptr {{%.*}}, ptr {{%.*}}, i64 1, i64 2, i64 3, ptr null)
743
+ // CHECK: call i1 (ptr, i1, ...) @llvm.coro.end.async(ptr [[CORO]], i1 false, ptr @"{{.*}}", ptr {{%.*}}, ptr {{%.*}}, i64 1, i64 2, i64 3, ptr null)
744
744
// CHECK: unreachable
745
745
// CHECK: [[FAIL]]:
746
746
// CHECK: call swiftcc void @"$s16typed_throws_abi5EmptyVACycfC"()
747
747
// CHECK: [[ERROR_WITNESS:%.*]] = call ptr @"$s16typed_throws_abi5EmptyVACs5ErrorAAWl"()
748
748
// CHECK: call swiftcc void @swift_willThrowTyped(ptr noalias undef, ptr getelementptr inbounds (<{ ptr, ptr, i64, ptr }>, ptr @"$s16typed_throws_abi5EmptyVMf", i32 0, i32 2), ptr [[ERROR_WITNESS]])
749
- // CHECK: %23 = call i1 (ptr, i1, ...) @llvm.coro.end.async(ptr [[CORO]], i1 false, ptr @"{{.*}}", ptr {{%.*}}, ptr {{%.*}}, i64 undef, i64 undef, i64 undef, ptr inttoptr (i64 1 to ptr))
749
+ // CHECK: call i1 (ptr, i1, ...) @llvm.coro.end.async(ptr [[CORO]], i1 false, ptr @"{{.*}}", ptr {{%.*}}, ptr {{%.*}}, i64 undef, i64 undef, i64 undef, ptr inttoptr (i64 1 to ptr))
750
750
// CHECK: unreachable
751
751
// CHECK: }
752
752
func f3( _ b: Bool ) async throws ( Empty) -> ( Int , Int , Int ) {
@@ -760,13 +760,13 @@ struct ImplAsync: PAsync {
760
760
// CHECK: [[CORO:%.*]] = call ptr @llvm.coro.begin(token {{%.*}}, ptr null)
761
761
// CHECK: br i1 %1, label %[[SUCCESS:.*]], label %[[FAIL:.*]]
762
762
// CHECK: [[SUCCESS]]:
763
- // CHECK: %16 = call i1 (ptr, i1, ...) @llvm.coro.end.async(ptr [[CORO]], i1 false, ptr @"{{.*}}", ptr {{%.*}}, ptr {{%.*}}, i64 1, i64 2, i64 3, i64 4, ptr null)
763
+ // CHECK: call i1 (ptr, i1, ...) @llvm.coro.end.async(ptr [[CORO]], i1 false, ptr @"{{.*}}", ptr {{%.*}}, ptr {{%.*}}, i64 1, i64 2, i64 3, i64 4, ptr null)
764
764
// CHECK: unreachable
765
765
// CHECK: [[FAIL]]:
766
766
// CHECK: call swiftcc void @"$s16typed_throws_abi5EmptyVACycfC"()
767
767
// CHECK: [[ERROR_WITNESS:%.*]] = call ptr @"$s16typed_throws_abi5EmptyVACs5ErrorAAWl"()
768
768
// CHECK: call swiftcc void @swift_willThrowTyped(ptr noalias undef, ptr getelementptr inbounds (<{ ptr, ptr, i64, ptr }>, ptr @"$s16typed_throws_abi5EmptyVMf", i32 0, i32 2), ptr [[ERROR_WITNESS]])
769
- // CHECK: %23 = call i1 (ptr, i1, ...) @llvm.coro.end.async(ptr [[CORO]], i1 false, ptr @"{{.*}}", ptr {{%.*}}, ptr {{%.*}}, i64 undef, i64 undef, i64 undef, i64 undef, ptr inttoptr (i64 1 to ptr))
769
+ // CHECK: call i1 (ptr, i1, ...) @llvm.coro.end.async(ptr [[CORO]], i1 false, ptr @"{{.*}}", ptr {{%.*}}, ptr {{%.*}}, i64 undef, i64 undef, i64 undef, i64 undef, ptr inttoptr (i64 1 to ptr))
770
770
// CHECK: unreachable
771
771
// CHECK: }
772
772
func f4( _ b: Bool ) async throws ( Empty) -> ( Int , Int , Int , Int ) {
@@ -776,7 +776,7 @@ struct ImplAsync: PAsync {
776
776
return ( 1 , 2 , 3 , 4 )
777
777
}
778
778
779
- // CHECK: define hidden swifttailcc void @"$s16typed_throws_abi9ImplAsyncV2f5ySi_S4itSbYaAA5EmptyVYKF"(ptr noalias nocapture %0, ptr swiftasync %1, i1 %2, ptr %3) #0 {
779
+ // CHECK: define hidden swifttailcc void @"$s16typed_throws_abi9ImplAsyncV2f5ySi_S4itSbYaAA5EmptyVYKF"(ptr noalias nocapture %0, ptr swiftasync %1, i1 %2, ptr %3)
780
780
// CHECK: [[CORO:%.*]] = call ptr @llvm.coro.begin(token {{%.*}}, ptr null)
781
781
// CHECK: br i1 %2, label %[[SUCCESS:.*]], label %[[FAIL:.*]]
782
782
// CHECK: [[SUCCESS]]:
@@ -905,7 +905,7 @@ struct ImplAsync: PAsync {
905
905
return ( 1 , 2 , 3 , 4 )
906
906
}
907
907
908
- // CHECK: define hidden swifttailcc void @"$s16typed_throws_abi9ImplAsyncV2g5ySi_S4itSbYaAA7OneWordVYKF"(ptr noalias nocapture %0, ptr swiftasync %1, i1 %2, ptr %3) #0 {
908
+ // CHECK: define hidden swifttailcc void @"$s16typed_throws_abi9ImplAsyncV2g5ySi_S4itSbYaAA7OneWordVYKF"(ptr noalias nocapture %0, ptr swiftasync %1, i1 %2, ptr %3)
909
909
// CHECK: [[ERROR:%.*]] = alloca %T16typed_throws_abi7OneWordV, align 8
910
910
// CHECK: [[CORO:%.*]] = call ptr @llvm.coro.begin(token {{%.*}}, ptr null)
911
911
// CHECK: br i1 %2, label %[[SUCCESS:.*]], label %[[FAIL:.*]]
@@ -1592,7 +1592,7 @@ func nonMatching_f0_async(_ b: Bool) async throws(OneWord) -> (Float, Float) {
1592
1592
// CHECK: [[RETVAL0:%.*]] = phi i64 [ [[ERROR_RES0:%.*]], %[[SET_ERROR]] ], [ 1, %[[SUCCESS]] ]
1593
1593
// CHECK: [[RETVAL1:%.*]] = phi float [ 0.000000e+00, %[[SET_ERROR]] ], [ [[SUCCESS_RES0]], %[[SUCCESS]] ]
1594
1594
// CHECK: [[RETVAL2:%.*]] = phi float [ 0.000000e+00, %[[SET_ERROR]] ], [ [[SUCCESS_RES1]], %[[SUCCESS]] ]
1595
- // CHECK: %39 = call i1 (ptr, i1, ...) @llvm.coro.end.async(ptr {{%.*}}, i1 false, ptr @"$s16typed_throws_abi24callNonMatching_f0_asyncySi_S2ftSbYaF.0.50", ptr {{%.*}}, ptr {{%.*}}, i64 [[RETVAL0]], float [[RETVAL1]], float [[RETVAL2]])
1595
+ // CHECK: call i1 (ptr, i1, ...) @llvm.coro.end.async(ptr {{%.*}}, i1 false, ptr @"$s16typed_throws_abi24callNonMatching_f0_asyncySi_S2ftSbYaF.0.50", ptr {{%.*}}, ptr {{%.*}}, i64 [[RETVAL0]], float [[RETVAL1]], float [[RETVAL2]])
1596
1596
// CHECK: unreachable
1597
1597
// CHECK: [[SET_ERROR]]:
1598
1598
// CHECK: [[ERROR_RES0]] = phi i64 [ [[CALL_RES2]], %typed.error.load ]
@@ -1612,7 +1612,7 @@ func callNonMatching_f0_async(_ b: Bool) async -> (Int, Float, Float) {
1612
1612
// CHECK: define hidden swifttailcc void @"$s16typed_throws_abi20nonMatching_f1_asyncySf_SbSftSbYaAA7OneWordVYKF"(ptr swiftasync %0, i1 %1)
1613
1613
// CHECK: br i1 %1, label %[[SUCCESS:.*]], label %[[ERROR:.*]]
1614
1614
// CHECK: [[SUCCESS]]:
1615
- // CHECK: %17 = call i1 (ptr, i1, ...) @llvm.coro.end.async(ptr {{%.*}}, i1 false, ptr @"$s16typed_throws_abi20nonMatching_f1_asyncySf_SbSftSbYaAA7OneWordVYKF.0.51", ptr {{%.*}}, ptr {{%.*}}, float 1.000000e+00, i64 1, float 2.000000e+00, ptr null)
1615
+ // CHECK: call i1 (ptr, i1, ...) @llvm.coro.end.async(ptr {{%.*}}, i1 false, ptr @"$s16typed_throws_abi20nonMatching_f1_asyncySf_SbSftSbYaAA7OneWordVYKF.0.51", ptr {{%.*}}, ptr {{%.*}}, float 1.000000e+00, i64 1, float 2.000000e+00, ptr null)
1616
1616
// CHECK: unreachable
1617
1617
// CHECK: [[ERROR]]:
1618
1618
// CHECK: [[ERROR_X:%.*]] = load i64, ptr %.x1._value, align 8
@@ -1654,7 +1654,7 @@ func nonMatching_f1_async(_ b: Bool) async throws(OneWord) -> (Float, Bool, Floa
1654
1654
// CHECK: [[RETVAL1:%.*]] = phi float [ 0.000000e+00, %[[SET_ERROR]] ], [ [[SUCCESS_RES0]], %[[SUCCESS]] ]
1655
1655
// CHECK: [[RETVAL2:%.*]] = phi i1 [ false, %[[SET_ERROR]] ], [ [[SUCCESS_RES1]], %[[SUCCESS]] ]
1656
1656
// CHECK: [[RETVAL3:%.*]] = phi float [ 0.000000e+00, %[[SET_ERROR]] ], [ [[SUCCESS_RES2]], %[[SUCCESS]] ]
1657
- // CHECK: %43 = call i1 (ptr, i1, ...) @llvm.coro.end.async(ptr {{%.*}}, i1 false, ptr @"$s16typed_throws_abi24callNonMatching_f1_asyncySi_SfSbSftSbYaF.0.52", ptr {{%.*}}, ptr {{%.*}}, i64 [[RETVAL0]], float [[RETVAL1]], i1 [[RETVAL2]], float [[RETVAL3]])
1657
+ // CHECK: call i1 (ptr, i1, ...) @llvm.coro.end.async(ptr {{%.*}}, i1 false, ptr @"$s16typed_throws_abi24callNonMatching_f1_asyncySi_SfSbSftSbYaF.0.52", ptr {{%.*}}, ptr {{%.*}}, i64 [[RETVAL0]], float [[RETVAL1]], i1 [[RETVAL2]], float [[RETVAL3]])
1658
1658
// CHECK: unreachable
1659
1659
// CHECK: [[SET_ERROR]]:
1660
1660
// CHECK: [[ERROR_RES0]] = phi i64 [ [[CALL_RES1]], %typed.error.load ]
0 commit comments