-
Notifications
You must be signed in to change notification settings - Fork 18.4k
Commit 2ff746d
runtime: add async preemption support on ARM
This CL adds support of call injection and async preemption on
ARM.
Injected call, like sigpanic, has special frame layout. Teach
traceback to handle it.
Change-Id: I887e90134fbf8a676b73c26321c50b3c4762dba4
Reviewed-on: https://go-review.googlesource.com/c/go/+/202338
Run-TryBot: Cherry Zhang <cherryyz@google.com>
Reviewed-by: Austin Clements <austin@google.com>1 parent 376c4ce commit 2ff746d
File tree
6 files changed
+153
-16
lines changed- src
- cmd/compile/internal/ssa/gen
- runtime
6 files changed
+153
-16
lines changedLines changed: 2 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
60 | 60 |
| |
61 | 61 |
| |
62 | 62 |
| |
63 | + | ||
64 | + | ||
63 | 65 |
| |
64 | 66 |
| |
65 | 67 |
| |
|
Lines changed: 57 additions & 8 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
78 | 78 |
| |
79 | 79 |
| |
80 | 80 |
| |
81 | - | ||
81 | + | ||
82 | 82 |
| |
83 | 83 |
| |
84 | 84 |
| |
| |||
133 | 133 |
| |
134 | 134 |
| |
135 | 135 |
| |
136 | + | ||
137 | + | ||
138 | + | ||
139 | + | ||
136 | 140 |
| |
137 | 141 |
| |
138 | 142 |
| |
143 | + | ||
139 | 144 |
| |
140 | 145 |
| |
141 | 146 |
| |
| |||
165 | 170 |
| |
166 | 171 |
| |
167 | 172 |
| |
168 | - | ||
173 | + | ||
169 | 174 |
| |
170 | 175 |
| |
171 | 176 |
| |
| |||
176 | 181 |
| |
177 | 182 |
| |
178 | 183 |
| |
179 | - | ||
184 | + | ||
180 | 185 |
| |
181 | 186 |
| |
182 | 187 |
| |
| |||
185 | 190 |
| |
186 | 191 |
| |
187 | 192 |
| |
188 | - | ||
193 | + | ||
189 | 194 |
| |
190 | 195 |
| |
191 | 196 |
| |
| |||
200 | 205 |
| |
201 | 206 |
| |
202 | 207 |
| |
203 | - | ||
208 | + | ||
204 | 209 |
| |
205 | 210 |
| |
206 | 211 |
| |
| |||
210 | 215 |
| |
211 | 216 |
| |
212 | 217 |
| |
213 | - | ||
218 | + | ||
214 | 219 |
| |
215 | 220 |
| |
216 | 221 |
| |
217 | - | ||
222 | + | ||
218 | 223 |
| |
219 | 224 |
| |
220 | 225 |
| |
| |||
224 | 229 |
| |
225 | 230 |
| |
226 | 231 |
| |
227 | - | ||
232 | + | ||
228 | 233 |
| |
229 | 234 |
| |
230 | 235 |
| |
| |||
255 | 260 |
| |
256 | 261 |
| |
257 | 262 |
| |
263 | + | ||
264 | + | ||
265 | + | ||
266 | + | ||
267 | + | ||
268 | + | ||
269 | + | ||
270 | + | ||
271 | + | ||
272 | + | ||
273 | + | ||
274 | + | ||
275 | + | ||
276 | + | ||
277 | + | ||
278 | + | ||
279 | + | ||
280 | + | ||
281 | + | ||
282 | + | ||
283 | + | ||
284 | + | ||
285 | + | ||
286 | + | ||
287 | + | ||
288 | + | ||
289 | + | ||
290 | + | ||
291 | + | ||
292 | + | ||
293 | + | ||
294 | + | ||
295 | + | ||
296 | + | ||
297 | + | ||
298 | + | ||
299 | + | ||
300 | + | ||
301 | + | ||
302 | + | ||
303 | + | ||
304 | + | ||
305 | + | ||
306 | + | ||
258 | 307 |
| |
259 | 308 |
| |
260 | 309 |
| |
|
Lines changed: 2 additions & 2 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
26 | 26 |
| |
27 | 27 |
| |
28 | 28 |
| |
29 | - | ||
29 | + | ||
30 | 30 |
| |
31 | 31 |
| |
32 | 32 |
| |
| |||
38 | 38 |
| |
39 | 39 |
| |
40 | 40 |
| |
41 | - | ||
41 | + | ||
42 | 42 |
| |
43 | 43 |
| |
44 | 44 |
| |
|
Lines changed: 77 additions & 2 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
4 | 4 |
| |
5 | 5 |
| |
6 | 6 |
| |
7 | - | ||
8 | - | ||
7 | + | ||
8 | + | ||
9 | + | ||
10 | + | ||
11 | + | ||
12 | + | ||
13 | + | ||
14 | + | ||
15 | + | ||
16 | + | ||
17 | + | ||
18 | + | ||
19 | + | ||
20 | + | ||
21 | + | ||
22 | + | ||
23 | + | ||
24 | + | ||
25 | + | ||
26 | + | ||
27 | + | ||
28 | + | ||
29 | + | ||
30 | + | ||
31 | + | ||
32 | + | ||
33 | + | ||
34 | + | ||
35 | + | ||
36 | + | ||
37 | + | ||
38 | + | ||
39 | + | ||
40 | + | ||
41 | + | ||
42 | + | ||
43 | + | ||
44 | + | ||
45 | + | ||
46 | + | ||
47 | + | ||
48 | + | ||
49 | + | ||
50 | + | ||
51 | + | ||
52 | + | ||
53 | + | ||
54 | + | ||
55 | + | ||
56 | + | ||
57 | + | ||
58 | + | ||
59 | + | ||
60 | + | ||
61 | + | ||
62 | + | ||
63 | + | ||
64 | + | ||
65 | + | ||
66 | + | ||
67 | + | ||
68 | + | ||
69 | + | ||
70 | + | ||
71 | + | ||
72 | + | ||
73 | + | ||
74 | + | ||
75 | + | ||
76 | + | ||
77 | + | ||
78 | + | ||
79 | + | ||
80 | + | ||
81 | + | ||
82 | + | ||
83 | + |
Lines changed: 12 additions & 2 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
63 | 63 |
| |
64 | 64 |
| |
65 | 65 |
| |
66 | - | ||
66 | + | ||
67 | 67 |
| |
68 | 68 |
| |
69 | - | ||
69 | + | ||
70 | + | ||
71 | + | ||
72 | + | ||
73 | + | ||
74 | + | ||
75 | + | ||
76 | + | ||
77 | + | ||
78 | + | ||
79 | + | ||
70 | 80 |
|
Lines changed: 3 additions & 2 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
462 | 462 |
| |
463 | 463 |
| |
464 | 464 |
| |
465 | + | ||
465 | 466 |
| |
466 | 467 |
| |
467 | 468 |
| |
| |||
477 | 478 |
| |
478 | 479 |
| |
479 | 480 |
| |
480 | - | ||
481 | - | ||
481 | + | ||
482 | + | ||
482 | 483 |
| |
483 | 484 |
| |
484 | 485 |
| |
|
0 commit comments