@@ -6,7 +6,7 @@ declare ptr @julia.get_pgcstack()
6
6
7
7
declare swiftcc void @sret_call (ptr noalias nocapture noundef nonnull sret ([3 x ptr addrspace (10 )]), ptr nonnull swiftself , ptr addrspace (10 ) nonnull )
8
8
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 ) {
10
10
; CHECK-LABEL: @sret_select
11
11
; CHECK: %gcframe = call ptr @julia.new_gc_frame(i32 6)
12
12
; 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
17
17
%3 = alloca [3 x i64 ], align 8
18
18
%4 = alloca [3 x i64 ], align 8
19
19
%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 )
21
21
; CHECK: call void @julia.pop_gc_frame(ptr %gcframe)
22
22
ret ptr addrspace (10 ) %1
23
23
}
24
24
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 ) {
26
26
top:
27
27
; CHECK-LABEL: @sret_phi
28
28
; CHECK: %gcframe = call ptr @julia.new_gc_frame(i32 6)
@@ -43,14 +43,14 @@ false: ; preds = %top
43
43
44
44
ret: ; preds = %false, %true
45
45
%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 )
47
47
; CHECK: call void @julia.pop_gc_frame(ptr %gcframe)
48
48
ret ptr addrspace (10 ) %1
49
49
}
50
50
51
51
declare swiftcc void @sret_call_gc (ptr noalias nocapture noundef sret ({ ptr addrspace (10 ), i64 , i64 }), ptr noalias nocapture noundef, ptr nonnull swiftself )
52
52
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 ) {
54
54
top:
55
55
; CHECK-LABEL: @sret_gc_root_phi
56
56
; CHECK: %gcframe = call ptr @julia.new_gc_frame(i32 2)
@@ -75,13 +75,13 @@ false: ; preds = %top
75
75
76
76
ret: ; preds = %false, %true
77
77
%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 )
79
79
; CHECK: call void @julia.pop_gc_frame(ptr %gcframe)
80
80
ret void
81
81
}
82
82
83
83
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 ) {
85
85
top:
86
86
; CHECK-LABEL: @sret_gc_root_phi_select
87
87
; CHECK: %gcframe = call ptr @julia.new_gc_frame(i32 3)
@@ -110,12 +110,12 @@ false: ; preds = %top
110
110
ret: ; preds = %false, %true
111
111
%5 = phi ptr [ %2 , %true ], [ %3 , %false ]
112
112
%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 )
114
114
; CHECK: call void @julia.pop_gc_frame(ptr %gcframe)
115
115
ret void
116
116
}
117
117
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 ) {
119
119
top:
120
120
; CHECK-LABEL: @sret_gc_root_select_phi
121
121
; CHECK: %gcframe = call ptr @julia.new_gc_frame(i32 3)
@@ -145,7 +145,7 @@ false: ; preds = %top
145
145
ret: ; preds = %false, %true
146
146
%6 = phi ptr [ %2 , %true ], [ %5 , %false ]
147
147
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 )
149
149
; CHECK: call void @julia.pop_gc_frame(ptr %gcframe)
150
150
ret void
151
151
}
0 commit comments