@@ -4,7 +4,7 @@ target datalayout = "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64"
4
4
target triple = "thumbv7m-unknown-unknown-eabi"
5
5
6
6
%runtime._defer = type { i32 , %runtime._defer* }
7
- %"internal/task.DeferFrame" = type { i8* , i8* , %"internal/task.DeferFrame" *, i1 , %runtime._interface }
7
+ %runtime.deferFrame = type { i8* , i8* , %runtime.deferFrame * , i1 , %runtime._interface }
8
8
%runtime._interface = type { i32 , i8* }
9
9
10
10
declare noalias nonnull i8* @runtime.alloc (i32 , i8* , i8* ) #0
@@ -23,16 +23,16 @@ entry:
23
23
%defer.alloca = alloca { i32 , %runtime._defer* }, align 4
24
24
%deferPtr = alloca %runtime._defer* , align 4
25
25
store %runtime._defer* null , %runtime._defer** %deferPtr , align 4
26
- %deferframe.buf = alloca %"internal/task.DeferFrame" , align 4
26
+ %deferframe.buf = alloca %runtime.deferFrame , align 4
27
27
%0 = call i8* @llvm.stacksave ()
28
- call void @runtime.setupDeferFrame (%"internal/task.DeferFrame" * nonnull %deferframe.buf , i8* %0 , i8* undef ) #3
28
+ call void @runtime.setupDeferFrame (%runtime.deferFrame * nonnull %deferframe.buf , i8* %0 , i8* undef ) #3
29
29
%defer.alloca.repack = getelementptr inbounds { i32 , %runtime._defer* }, { i32 , %runtime._defer* }* %defer.alloca , i32 0 , i32 0
30
30
store i32 0 , i32* %defer.alloca.repack , align 4
31
31
%defer.alloca.repack16 = getelementptr inbounds { i32 , %runtime._defer* }, { i32 , %runtime._defer* }* %defer.alloca , i32 0 , i32 1
32
32
store %runtime._defer* null , %runtime._defer** %defer.alloca.repack16 , align 4
33
33
%1 = bitcast %runtime._defer** %deferPtr to { i32 , %runtime._defer* }**
34
34
store { i32 , %runtime._defer* }* %defer.alloca , { i32 , %runtime._defer* }** %1 , align 4
35
- %setjmp = call i32 asm "\0A movs r0, #0\0A mov r2, pc\0A str r2, [r1, #4]" , "={r0},{r1},~{r1},~{r2},~{r3},~{r4},~{r5},~{r6},~{r7},~{r8},~{r9},~{r10},~{r11},~{r12},~{lr},~{q0},~{q1},~{q2},~{q3},~{q4},~{q5},~{q6},~{q7},~{q8},~{q9},~{q10},~{q11},~{q12},~{q13},~{q14},~{q15},~{cpsr},~{memory}" (%"internal/task.DeferFrame" * nonnull %deferframe.buf ) #4
35
+ %setjmp = call i32 asm "\0A movs r0, #0\0A mov r2, pc\0A str r2, [r1, #4]" , "={r0},{r1},~{r1},~{r2},~{r3},~{r4},~{r5},~{r6},~{r7},~{r8},~{r9},~{r10},~{r11},~{r12},~{lr},~{q0},~{q1},~{q2},~{q3},~{q4},~{q5},~{q6},~{q7},~{q8},~{q9},~{q10},~{q11},~{q12},~{q13},~{q14},~{q15},~{cpsr},~{memory}" (%runtime.deferFrame * nonnull %deferframe.buf ) #4
36
36
%setjmp.result = icmp eq i32 %setjmp , 0
37
37
br i1 %setjmp.result , label %2 , label %lpad
38
38
@@ -56,7 +56,7 @@ rundefers.loop: ; preds = %rundefers.loophead
56
56
]
57
57
58
58
rundefers.callback0: ; preds = %rundefers.loop
59
- %setjmp1 = call i32 asm "\0A movs r0, #0\0A mov r2, pc\0A str r2, [r1, #4]" , "={r0},{r1},~{r1},~{r2},~{r3},~{r4},~{r5},~{r6},~{r7},~{r8},~{r9},~{r10},~{r11},~{r12},~{lr},~{q0},~{q1},~{q2},~{q3},~{q4},~{q5},~{q6},~{q7},~{q8},~{q9},~{q10},~{q11},~{q12},~{q13},~{q14},~{q15},~{cpsr},~{memory}" (%"internal/task.DeferFrame" * nonnull %deferframe.buf ) #4
59
+ %setjmp1 = call i32 asm "\0A movs r0, #0\0A mov r2, pc\0A str r2, [r1, #4]" , "={r0},{r1},~{r1},~{r2},~{r3},~{r4},~{r5},~{r6},~{r7},~{r8},~{r9},~{r10},~{r11},~{r12},~{lr},~{q0},~{q1},~{q2},~{q3},~{q4},~{q5},~{q6},~{q7},~{q8},~{q9},~{q10},~{q11},~{q12},~{q13},~{q14},~{q15},~{cpsr},~{memory}" (%runtime.deferFrame * nonnull %deferframe.buf ) #4
60
60
%setjmp.result2 = icmp eq i32 %setjmp1 , 0
61
61
br i1 %setjmp.result2 , label %4 , label %lpad
62
62
@@ -68,11 +68,11 @@ rundefers.default: ; preds = %rundefers.loop
68
68
unreachable
69
69
70
70
rundefers.end: ; preds = %rundefers.loophead
71
- call void @runtime.destroyDeferFrame (%"internal/task.DeferFrame" * nonnull %deferframe.buf , i8* undef ) #3
71
+ call void @runtime.destroyDeferFrame (%runtime.deferFrame * nonnull %deferframe.buf , i8* undef ) #3
72
72
ret void
73
73
74
74
recover: ; preds = %rundefers.end3
75
- call void @runtime.destroyDeferFrame (%"internal/task.DeferFrame" * nonnull %deferframe.buf , i8* undef ) #3
75
+ call void @runtime.destroyDeferFrame (%runtime.deferFrame * nonnull %deferframe.buf , i8* undef ) #3
76
76
ret void
77
77
78
78
lpad: ; preds = %rundefers.callback012, %rundefers.callback0, %entry
@@ -94,7 +94,7 @@ rundefers.loop5: ; preds = %rundefers.loophead6
94
94
]
95
95
96
96
rundefers.callback012: ; preds = %rundefers.loop5
97
- %setjmp14 = call i32 asm "\0A movs r0, #0\0A mov r2, pc\0A str r2, [r1, #4]" , "={r0},{r1},~{r1},~{r2},~{r3},~{r4},~{r5},~{r6},~{r7},~{r8},~{r9},~{r10},~{r11},~{r12},~{lr},~{q0},~{q1},~{q2},~{q3},~{q4},~{q5},~{q6},~{q7},~{q8},~{q9},~{q10},~{q11},~{q12},~{q13},~{q14},~{q15},~{cpsr},~{memory}" (%"internal/task.DeferFrame" * nonnull %deferframe.buf ) #4
97
+ %setjmp14 = call i32 asm "\0A movs r0, #0\0A mov r2, pc\0A str r2, [r1, #4]" , "={r0},{r1},~{r1},~{r2},~{r3},~{r4},~{r5},~{r6},~{r7},~{r8},~{r9},~{r10},~{r11},~{r12},~{lr},~{q0},~{q1},~{q2},~{q3},~{q4},~{q5},~{q6},~{q7},~{q8},~{q9},~{q10},~{q11},~{q12},~{q13},~{q14},~{q15},~{cpsr},~{memory}" (%runtime.deferFrame * nonnull %deferframe.buf ) #4
98
98
%setjmp.result15 = icmp eq i32 %setjmp14 , 0
99
99
br i1 %setjmp.result15 , label %6 , label %lpad
100
100
@@ -112,7 +112,7 @@ rundefers.end3: ; preds = %rundefers.loophead6
112
112
; Function Attrs: nofree nosync nounwind willreturn
113
113
declare i8* @llvm.stacksave () #2
114
114
115
- declare void @runtime.setupDeferFrame (%"internal/task.DeferFrame" * dereferenceable_or_null (24 ), i8* , i8* ) #0
115
+ declare void @runtime.setupDeferFrame (%runtime.deferFrame * dereferenceable_or_null (24 ), i8* , i8* ) #0
116
116
117
117
; Function Attrs: nounwind
118
118
define hidden void @"main.deferSimple$1" (i8* %context ) unnamed_addr #1 {
@@ -121,7 +121,7 @@ entry:
121
121
ret void
122
122
}
123
123
124
- declare void @runtime.destroyDeferFrame (%"internal/task.DeferFrame" * dereferenceable_or_null (24 ), i8* ) #0
124
+ declare void @runtime.destroyDeferFrame (%runtime.deferFrame * dereferenceable_or_null (24 ), i8* ) #0
125
125
126
126
declare void @runtime.printint32 (i32 , i8* ) #0
127
127
@@ -132,9 +132,9 @@ entry:
132
132
%defer.alloca = alloca { i32 , %runtime._defer* }, align 4
133
133
%deferPtr = alloca %runtime._defer* , align 4
134
134
store %runtime._defer* null , %runtime._defer** %deferPtr , align 4
135
- %deferframe.buf = alloca %"internal/task.DeferFrame" , align 4
135
+ %deferframe.buf = alloca %runtime.deferFrame , align 4
136
136
%0 = call i8* @llvm.stacksave ()
137
- call void @runtime.setupDeferFrame (%"internal/task.DeferFrame" * nonnull %deferframe.buf , i8* %0 , i8* undef ) #3
137
+ call void @runtime.setupDeferFrame (%runtime.deferFrame * nonnull %deferframe.buf , i8* %0 , i8* undef ) #3
138
138
%defer.alloca.repack = getelementptr inbounds { i32 , %runtime._defer* }, { i32 , %runtime._defer* }* %defer.alloca , i32 0 , i32 0
139
139
store i32 0 , i32* %defer.alloca.repack , align 4
140
140
%defer.alloca.repack26 = getelementptr inbounds { i32 , %runtime._defer* }, { i32 , %runtime._defer* }* %defer.alloca , i32 0 , i32 1
@@ -148,7 +148,7 @@ entry:
148
148
store { i32 , %runtime._defer* }* %defer.alloca , { i32 , %runtime._defer* }** %2 , align 4
149
149
%3 = bitcast %runtime._defer** %deferPtr to { i32 , %runtime._defer* }**
150
150
store { i32 , %runtime._defer* }* %defer.alloca2 , { i32 , %runtime._defer* }** %3 , align 4
151
- %setjmp = call i32 asm "\0A movs r0, #0\0A mov r2, pc\0A str r2, [r1, #4]" , "={r0},{r1},~{r1},~{r2},~{r3},~{r4},~{r5},~{r6},~{r7},~{r8},~{r9},~{r10},~{r11},~{r12},~{lr},~{q0},~{q1},~{q2},~{q3},~{q4},~{q5},~{q6},~{q7},~{q8},~{q9},~{q10},~{q11},~{q12},~{q13},~{q14},~{q15},~{cpsr},~{memory}" (%"internal/task.DeferFrame" * nonnull %deferframe.buf ) #4
151
+ %setjmp = call i32 asm "\0A movs r0, #0\0A mov r2, pc\0A str r2, [r1, #4]" , "={r0},{r1},~{r1},~{r2},~{r3},~{r4},~{r5},~{r6},~{r7},~{r8},~{r9},~{r10},~{r11},~{r12},~{lr},~{q0},~{q1},~{q2},~{q3},~{q4},~{q5},~{q6},~{q7},~{q8},~{q9},~{q10},~{q11},~{q12},~{q13},~{q14},~{q15},~{cpsr},~{memory}" (%runtime.deferFrame * nonnull %deferframe.buf ) #4
152
152
%setjmp.result = icmp eq i32 %setjmp , 0
153
153
br i1 %setjmp.result , label %4 , label %lpad
154
154
@@ -173,7 +173,7 @@ rundefers.loop: ; preds = %rundefers.loophead
173
173
]
174
174
175
175
rundefers.callback0: ; preds = %rundefers.loop
176
- %setjmp4 = call i32 asm "\0A movs r0, #0\0A mov r2, pc\0A str r2, [r1, #4]" , "={r0},{r1},~{r1},~{r2},~{r3},~{r4},~{r5},~{r6},~{r7},~{r8},~{r9},~{r10},~{r11},~{r12},~{lr},~{q0},~{q1},~{q2},~{q3},~{q4},~{q5},~{q6},~{q7},~{q8},~{q9},~{q10},~{q11},~{q12},~{q13},~{q14},~{q15},~{cpsr},~{memory}" (%"internal/task.DeferFrame" * nonnull %deferframe.buf ) #4
176
+ %setjmp4 = call i32 asm "\0A movs r0, #0\0A mov r2, pc\0A str r2, [r1, #4]" , "={r0},{r1},~{r1},~{r2},~{r3},~{r4},~{r5},~{r6},~{r7},~{r8},~{r9},~{r10},~{r11},~{r12},~{lr},~{q0},~{q1},~{q2},~{q3},~{q4},~{q5},~{q6},~{q7},~{q8},~{q9},~{q10},~{q11},~{q12},~{q13},~{q14},~{q15},~{cpsr},~{memory}" (%runtime.deferFrame * nonnull %deferframe.buf ) #4
177
177
%setjmp.result5 = icmp eq i32 %setjmp4 , 0
178
178
br i1 %setjmp.result5 , label %6 , label %lpad
179
179
@@ -182,7 +182,7 @@ rundefers.callback0: ; preds = %rundefers.loop
182
182
br label %rundefers.loophead
183
183
184
184
rundefers.callback1: ; preds = %rundefers.loop
185
- %setjmp7 = call i32 asm "\0A movs r0, #0\0A mov r2, pc\0A str r2, [r1, #4]" , "={r0},{r1},~{r1},~{r2},~{r3},~{r4},~{r5},~{r6},~{r7},~{r8},~{r9},~{r10},~{r11},~{r12},~{lr},~{q0},~{q1},~{q2},~{q3},~{q4},~{q5},~{q6},~{q7},~{q8},~{q9},~{q10},~{q11},~{q12},~{q13},~{q14},~{q15},~{cpsr},~{memory}" (%"internal/task.DeferFrame" * nonnull %deferframe.buf ) #4
185
+ %setjmp7 = call i32 asm "\0A movs r0, #0\0A mov r2, pc\0A str r2, [r1, #4]" , "={r0},{r1},~{r1},~{r2},~{r3},~{r4},~{r5},~{r6},~{r7},~{r8},~{r9},~{r10},~{r11},~{r12},~{lr},~{q0},~{q1},~{q2},~{q3},~{q4},~{q5},~{q6},~{q7},~{q8},~{q9},~{q10},~{q11},~{q12},~{q13},~{q14},~{q15},~{cpsr},~{memory}" (%runtime.deferFrame * nonnull %deferframe.buf ) #4
186
186
%setjmp.result8 = icmp eq i32 %setjmp7 , 0
187
187
br i1 %setjmp.result8 , label %7 , label %lpad
188
188
@@ -194,11 +194,11 @@ rundefers.default: ; preds = %rundefers.loop
194
194
unreachable
195
195
196
196
rundefers.end: ; preds = %rundefers.loophead
197
- call void @runtime.destroyDeferFrame (%"internal/task.DeferFrame" * nonnull %deferframe.buf , i8* undef ) #3
197
+ call void @runtime.destroyDeferFrame (%runtime.deferFrame * nonnull %deferframe.buf , i8* undef ) #3
198
198
ret void
199
199
200
200
recover: ; preds = %rundefers.end9
201
- call void @runtime.destroyDeferFrame (%"internal/task.DeferFrame" * nonnull %deferframe.buf , i8* undef ) #3
201
+ call void @runtime.destroyDeferFrame (%runtime.deferFrame * nonnull %deferframe.buf , i8* undef ) #3
202
202
ret void
203
203
204
204
lpad: ; preds = %rundefers.callback122, %rundefers.callback018, %rundefers.callback1, %rundefers.callback0, %entry
@@ -221,7 +221,7 @@ rundefers.loop11: ; preds = %rundefers.loophead1
221
221
]
222
222
223
223
rundefers.callback018: ; preds = %rundefers.loop11
224
- %setjmp20 = call i32 asm "\0A movs r0, #0\0A mov r2, pc\0A str r2, [r1, #4]" , "={r0},{r1},~{r1},~{r2},~{r3},~{r4},~{r5},~{r6},~{r7},~{r8},~{r9},~{r10},~{r11},~{r12},~{lr},~{q0},~{q1},~{q2},~{q3},~{q4},~{q5},~{q6},~{q7},~{q8},~{q9},~{q10},~{q11},~{q12},~{q13},~{q14},~{q15},~{cpsr},~{memory}" (%"internal/task.DeferFrame" * nonnull %deferframe.buf ) #4
224
+ %setjmp20 = call i32 asm "\0A movs r0, #0\0A mov r2, pc\0A str r2, [r1, #4]" , "={r0},{r1},~{r1},~{r2},~{r3},~{r4},~{r5},~{r6},~{r7},~{r8},~{r9},~{r10},~{r11},~{r12},~{lr},~{q0},~{q1},~{q2},~{q3},~{q4},~{q5},~{q6},~{q7},~{q8},~{q9},~{q10},~{q11},~{q12},~{q13},~{q14},~{q15},~{cpsr},~{memory}" (%runtime.deferFrame * nonnull %deferframe.buf ) #4
225
225
%setjmp.result21 = icmp eq i32 %setjmp20 , 0
226
226
br i1 %setjmp.result21 , label %9 , label %lpad
227
227
@@ -230,7 +230,7 @@ rundefers.callback018: ; preds = %rundefers.loop11
230
230
br label %rundefers.loophead12
231
231
232
232
rundefers.callback122: ; preds = %rundefers.loop11
233
- %setjmp24 = call i32 asm "\0A movs r0, #0\0A mov r2, pc\0A str r2, [r1, #4]" , "={r0},{r1},~{r1},~{r2},~{r3},~{r4},~{r5},~{r6},~{r7},~{r8},~{r9},~{r10},~{r11},~{r12},~{lr},~{q0},~{q1},~{q2},~{q3},~{q4},~{q5},~{q6},~{q7},~{q8},~{q9},~{q10},~{q11},~{q12},~{q13},~{q14},~{q15},~{cpsr},~{memory}" (%"internal/task.DeferFrame" * nonnull %deferframe.buf ) #4
233
+ %setjmp24 = call i32 asm "\0A movs r0, #0\0A mov r2, pc\0A str r2, [r1, #4]" , "={r0},{r1},~{r1},~{r2},~{r3},~{r4},~{r5},~{r6},~{r7},~{r8},~{r9},~{r10},~{r11},~{r12},~{lr},~{q0},~{q1},~{q2},~{q3},~{q4},~{q5},~{q6},~{q7},~{q8},~{q9},~{q10},~{q11},~{q12},~{q13},~{q14},~{q15},~{cpsr},~{memory}" (%runtime.deferFrame * nonnull %deferframe.buf ) #4
234
234
%setjmp.result25 = icmp eq i32 %setjmp24 , 0
235
235
br i1 %setjmp.result25 , label %10 , label %lpad
236
236
0 commit comments