@@ -6,7 +6,7 @@ declare ptr @julia.get_pgcstack()
66
77declare swiftcc void @sret_call (ptr noalias nocapture noundef nonnull sret ([3 x ptr addrspace (10 )]), ptr nonnull swiftself , ptr addrspace (10 ) nonnull )
88
9- define hidden swiftcc nonnull ptr addrspace (10 ) @sret_select (ptr nonnull swiftself %0 , ptr addrspace (10 ) noundef nonnull align 8 dereferenceable (88 ) %1 , i1 %unpredictable ) {
9+ define hidden swiftcc nonnull ptr addrspace (10 ) @sret_select (ptr nonnull swiftself "gcstack" %0 , ptr addrspace (10 ) noundef nonnull align 8 dereferenceable (88 ) %1 , i1 %unpredictable ) {
1010 ; CHECK-LABEL: @sret_select
1111 ; CHECK: %gcframe = call ptr @julia.new_gc_frame(i32 6)
1212 ; CHECK: call ptr @julia.get_gc_frame_slot(ptr %gcframe, i32 3)
@@ -17,12 +17,12 @@ define hidden swiftcc nonnull ptr addrspace(10) @sret_select(ptr nonnull swiftse
1717 %3 = alloca [3 x i64 ], align 8
1818 %4 = alloca [3 x i64 ], align 8
1919 %5 = select i1 %unpredictable , ptr %3 , ptr %4
20- call swiftcc void @sret_call (ptr noalias nocapture noundef nonnull sret ([3 x ptr addrspace (10 )]) %5 , ptr nonnull swiftself %0 , ptr addrspace (10 ) nonnull %1 )
20+ call swiftcc void @sret_call (ptr noalias nocapture noundef nonnull sret ([3 x ptr addrspace (10 )]) %5 , ptr nonnull swiftself "gcstack" %0 , ptr addrspace (10 ) nonnull %1 )
2121 ; CHECK: call void @julia.pop_gc_frame(ptr %gcframe)
2222 ret ptr addrspace (10 ) %1
2323}
2424
25- define hidden swiftcc nonnull ptr addrspace (10 ) @sret_phi (ptr nonnull swiftself %0 , ptr addrspace (10 ) noundef nonnull align 8 dereferenceable (88 ) %1 , i1 %unpredictable ) {
25+ define hidden swiftcc nonnull ptr addrspace (10 ) @sret_phi (ptr nonnull swiftself "gcstack" %0 , ptr addrspace (10 ) noundef nonnull align 8 dereferenceable (88 ) %1 , i1 %unpredictable ) {
2626top:
2727 ; CHECK-LABEL: @sret_phi
2828 ; CHECK: %gcframe = call ptr @julia.new_gc_frame(i32 6)
@@ -43,14 +43,14 @@ false: ; preds = %top
4343
4444ret: ; preds = %false, %true
4545 %4 = phi ptr [ %2 , %true ], [ %3 , %false ]
46- call swiftcc void @sret_call (ptr noalias nocapture noundef nonnull sret ([3 x ptr addrspace (10 )]) %4 , ptr nonnull swiftself %0 , ptr addrspace (10 ) nonnull %1 )
46+ call swiftcc void @sret_call (ptr noalias nocapture noundef nonnull sret ([3 x ptr addrspace (10 )]) %4 , ptr nonnull swiftself "gcstack" %0 , ptr addrspace (10 ) nonnull %1 )
4747 ; CHECK: call void @julia.pop_gc_frame(ptr %gcframe)
4848 ret ptr addrspace (10 ) %1
4949}
5050
5151declare swiftcc void @sret_call_gc (ptr noalias nocapture noundef sret ({ ptr addrspace (10 ), i64 , i64 }), ptr noalias nocapture noundef, ptr nonnull swiftself )
5252
53- define hidden swiftcc void @sret_gc_root_phi (ptr nonnull swiftself %0 , i1 %unpredictable ) {
53+ define hidden swiftcc void @sret_gc_root_phi (ptr nonnull swiftself "gcstack" %0 , i1 %unpredictable ) {
5454top:
5555 ; CHECK-LABEL: @sret_gc_root_phi
5656 ; CHECK: %gcframe = call ptr @julia.new_gc_frame(i32 2)
@@ -75,13 +75,13 @@ false: ; preds = %top
7575
7676ret: ; preds = %false, %true
7777 %4 = phi ptr [ %2 , %true ], [ %3 , %false ]
78- call swiftcc void @sret_call_gc (ptr noalias nocapture noundef sret ({ ptr addrspace (10 ), i64 , i64 }) %1 , ptr noalias nocapture noundef %4 , ptr nonnull swiftself %0 )
78+ call swiftcc void @sret_call_gc (ptr noalias nocapture noundef sret ({ ptr addrspace (10 ), i64 , i64 }) %1 , ptr noalias nocapture noundef %4 , ptr nonnull swiftself "gcstack" %0 )
7979 ; CHECK: call void @julia.pop_gc_frame(ptr %gcframe)
8080 ret void
8181}
8282
8383
84- define hidden swiftcc void @sret_gc_root_phi_select (ptr nonnull swiftself %0 , i1 %unpredictable , i1 %unpredictable2 ) {
84+ define hidden swiftcc void @sret_gc_root_phi_select (ptr nonnull swiftself "gcstack" %0 , i1 %unpredictable , i1 %unpredictable2 ) {
8585top:
8686 ; CHECK-LABEL: @sret_gc_root_phi_select
8787 ; CHECK: %gcframe = call ptr @julia.new_gc_frame(i32 3)
@@ -110,12 +110,12 @@ false: ; preds = %top
110110ret: ; preds = %false, %true
111111 %5 = phi ptr [ %2 , %true ], [ %3 , %false ]
112112 %6 = select i1 %unpredictable2 , ptr %4 , ptr %5
113- call swiftcc void @sret_call_gc (ptr noalias nocapture noundef sret ({ ptr addrspace (10 ), i64 , i64 }) %1 , ptr noalias nocapture noundef %6 , ptr nonnull swiftself %0 )
113+ call swiftcc void @sret_call_gc (ptr noalias nocapture noundef sret ({ ptr addrspace (10 ), i64 , i64 }) %1 , ptr noalias nocapture noundef %6 , ptr nonnull swiftself "gcstack" %0 )
114114 ; CHECK: call void @julia.pop_gc_frame(ptr %gcframe)
115115 ret void
116116}
117117
118- define hidden swiftcc void @sret_gc_root_select_phi (ptr nonnull swiftself %0 , i1 %unpredictable , i1 %unpredictable2 ) {
118+ define hidden swiftcc void @sret_gc_root_select_phi (ptr nonnull swiftself "gcstack" %0 , i1 %unpredictable , i1 %unpredictable2 ) {
119119top:
120120 ; CHECK-LABEL: @sret_gc_root_select_phi
121121 ; CHECK: %gcframe = call ptr @julia.new_gc_frame(i32 3)
@@ -145,7 +145,7 @@ false: ; preds = %top
145145ret: ; preds = %false, %true
146146 %6 = phi ptr [ %2 , %true ], [ %5 , %false ]
147147
148- call swiftcc void @sret_call_gc (ptr noalias nocapture noundef sret ({ ptr addrspace (10 ), i64 , i64 }) %1 , ptr noalias nocapture noundef %6 , ptr nonnull swiftself %0 )
148+ call swiftcc void @sret_call_gc (ptr noalias nocapture noundef sret ({ ptr addrspace (10 ), i64 , i64 }) %1 , ptr noalias nocapture noundef %6 , ptr nonnull swiftself "gcstack" %0 )
149149 ; CHECK: call void @julia.pop_gc_frame(ptr %gcframe)
150150 ret void
151151}
0 commit comments