Commit 0e6a0b8
committed
Add debug info support for function arguments in async functions.
This commit depends on changes to the coroutine-splitting pass in LLVM. Shadow
copies are also turned off for async function arguments, because they make it
impossible to track debug info during coroutine splitting. Instead we are
relying on LLVM's CoroSplit.cpp to emit shadow copies. The Swift frontend gives
CoroSplit license to move do this by describing the arguments using a
dbg.declare intrinsic, even though it points to chain of load/GEP/bitcase
instructions into the Swift context function argument.
rdar://718669361 parent 08d9680 commit 0e6a0b8
File tree
5 files changed
+110
-26
lines changed- lib/IRGen
- test/DebugInfo
5 files changed
+110
-26
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
197 | 197 | | |
198 | 198 | | |
199 | 199 | | |
200 | | - | |
| 200 | + | |
201 | 201 | | |
202 | 202 | | |
203 | 203 | | |
| |||
2367 | 2367 | | |
2368 | 2368 | | |
2369 | 2369 | | |
2370 | | - | |
| 2370 | + | |
2371 | 2371 | | |
2372 | 2372 | | |
2373 | 2373 | | |
| |||
2389 | 2389 | | |
2390 | 2390 | | |
2391 | 2391 | | |
2392 | | - | |
| 2392 | + | |
| 2393 | + | |
| 2394 | + | |
2393 | 2395 | | |
2394 | 2396 | | |
2395 | 2397 | | |
| |||
2401 | 2403 | | |
2402 | 2404 | | |
2403 | 2405 | | |
2404 | | - | |
| 2406 | + | |
2405 | 2407 | | |
2406 | 2408 | | |
2407 | 2409 | | |
| |||
2420 | 2422 | | |
2421 | 2423 | | |
2422 | 2424 | | |
2423 | | - | |
2424 | | - | |
2425 | | - | |
| 2425 | + | |
| 2426 | + | |
| 2427 | + | |
2426 | 2428 | | |
2427 | 2429 | | |
2428 | 2430 | | |
2429 | 2431 | | |
| 2432 | + | |
| 2433 | + | |
| 2434 | + | |
| 2435 | + | |
| 2436 | + | |
| 2437 | + | |
| 2438 | + | |
| 2439 | + | |
| 2440 | + | |
| 2441 | + | |
2430 | 2442 | | |
2431 | 2443 | | |
2432 | 2444 | | |
| |||
2506 | 2518 | | |
2507 | 2519 | | |
2508 | 2520 | | |
2509 | | - | |
| 2521 | + | |
| 2522 | + | |
2510 | 2523 | | |
2511 | 2524 | | |
2512 | 2525 | | |
| |||
2609 | 2622 | | |
2610 | 2623 | | |
2611 | 2624 | | |
2612 | | - | |
| 2625 | + | |
| 2626 | + | |
2613 | 2627 | | |
2614 | | - | |
| 2628 | + | |
2615 | 2629 | | |
2616 | 2630 | | |
2617 | 2631 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
38 | 38 | | |
39 | 39 | | |
40 | 40 | | |
41 | | - | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
42 | 47 | | |
43 | 48 | | |
44 | 49 | | |
| |||
61 | 66 | | |
62 | 67 | | |
63 | 68 | | |
64 | | - | |
65 | | - | |
| 69 | + | |
| 70 | + | |
66 | 71 | | |
67 | | - | |
| 72 | + | |
| 73 | + | |
68 | 74 | | |
69 | 75 | | |
70 | 76 | | |
| |||
143 | 149 | | |
144 | 150 | | |
145 | 151 | | |
146 | | - | |
| 152 | + | |
147 | 153 | | |
148 | 154 | | |
149 | 155 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
726 | 726 | | |
727 | 727 | | |
728 | 728 | | |
729 | | - | |
| 729 | + | |
| 730 | + | |
730 | 731 | | |
731 | | - | |
732 | 732 | | |
733 | 733 | | |
734 | 734 | | |
| |||
750 | 750 | | |
751 | 751 | | |
752 | 752 | | |
753 | | - | |
754 | | - | |
| 753 | + | |
| 754 | + | |
| 755 | + | |
| 756 | + | |
| 757 | + | |
755 | 758 | | |
756 | | - | |
| 759 | + | |
757 | 760 | | |
758 | 761 | | |
759 | 762 | | |
| |||
780 | 783 | | |
781 | 784 | | |
782 | 785 | | |
783 | | - | |
| 786 | + | |
784 | 787 | | |
785 | 788 | | |
786 | 789 | | |
| |||
4334 | 4337 | | |
4335 | 4338 | | |
4336 | 4339 | | |
| 4340 | + | |
| 4341 | + | |
4337 | 4342 | | |
4338 | | - | |
| 4343 | + | |
| 4344 | + | |
| 4345 | + | |
| 4346 | + | |
| 4347 | + | |
| 4348 | + | |
| 4349 | + | |
| 4350 | + | |
| 4351 | + | |
| 4352 | + | |
| 4353 | + | |
| 4354 | + | |
| 4355 | + | |
| 4356 | + | |
| 4357 | + | |
| 4358 | + | |
| 4359 | + | |
| 4360 | + | |
| 4361 | + | |
4339 | 4362 | | |
4340 | 4363 | | |
4341 | 4364 | | |
| |||
4349 | 4372 | | |
4350 | 4373 | | |
4351 | 4374 | | |
4352 | | - | |
4353 | | - | |
| 4375 | + | |
4354 | 4376 | | |
4355 | 4377 | | |
4356 | 4378 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
344 | 344 | | |
345 | 345 | | |
346 | 346 | | |
347 | | - | |
348 | | - | |
| 347 | + | |
| 348 | + | |
| 349 | + | |
349 | 350 | | |
350 | 351 | | |
351 | 352 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 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 | + | |
0 commit comments