Commit 37683cc
committed
cranelift-frontend: Propagate needs-stack-map from variables to values during finalization
Rather than trying to propagate the needs-stack-map bit from variables to values
online, while we are building the IR and defining and using variables, wait
until the function is being finalized, and then propagate everything all at
once. This avoids potential repeated work and is easier to ensure that it is
complete and covers all values associated with a variable, since by the time we
are finalizing the function, we won't add any new values for a variable that we
will need to keep track of and propagate this information to.
This also means that we can remove the `params_added_to_blocks` vector from the
SSA side effects structure, since it was only used to online-update the
`stack_map_values` set.1 parent 3f53021 commit 37683cc
File tree
3 files changed
+23
-31
lines changed- cranelift/frontend/src
- fuzz/fuzz_targets
3 files changed
+23
-31
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
473 | 473 | | |
474 | 474 | | |
475 | 475 | | |
476 | | - | |
477 | | - | |
478 | | - | |
479 | | - | |
480 | | - | |
481 | | - | |
482 | 476 | | |
483 | 477 | | |
484 | 478 | | |
| |||
494 | 488 | | |
495 | 489 | | |
496 | 490 | | |
| 491 | + | |
| 492 | + | |
497 | 493 | | |
498 | 494 | | |
499 | 495 | | |
| |||
503 | 499 | | |
504 | 500 | | |
505 | 501 | | |
506 | | - | |
507 | | - | |
508 | | - | |
509 | | - | |
510 | | - | |
511 | 502 | | |
512 | 503 | | |
513 | 504 | | |
| |||
720 | 711 | | |
721 | 712 | | |
722 | 713 | | |
| 714 | + | |
| 715 | + | |
| 716 | + | |
| 717 | + | |
| 718 | + | |
| 719 | + | |
| 720 | + | |
| 721 | + | |
| 722 | + | |
| 723 | + | |
| 724 | + | |
| 725 | + | |
723 | 726 | | |
724 | 727 | | |
725 | 728 | | |
| |||
1180 | 1183 | | |
1181 | 1184 | | |
1182 | 1185 | | |
1183 | | - | |
1184 | 1186 | | |
1185 | 1187 | | |
1186 | 1188 | | |
1187 | 1189 | | |
1188 | 1190 | | |
1189 | 1191 | | |
1190 | 1192 | | |
1191 | | - | |
1192 | | - | |
1193 | | - | |
1194 | | - | |
1195 | | - | |
1196 | | - | |
1197 | | - | |
1198 | | - | |
1199 | | - | |
1200 | | - | |
1201 | 1193 | | |
1202 | 1194 | | |
1203 | 1195 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
67 | 67 | | |
68 | 68 | | |
69 | 69 | | |
70 | | - | |
71 | | - | |
72 | | - | |
73 | | - | |
74 | | - | |
75 | | - | |
76 | 70 | | |
77 | 71 | | |
78 | 72 | | |
79 | 73 | | |
80 | 74 | | |
81 | 75 | | |
82 | | - | |
83 | 76 | | |
84 | | - | |
| 77 | + | |
85 | 78 | | |
86 | 79 | | |
87 | 80 | | |
| |||
195 | 188 | | |
196 | 189 | | |
197 | 190 | | |
| 191 | + | |
| 192 | + | |
| 193 | + | |
| 194 | + | |
| 195 | + | |
| 196 | + | |
198 | 197 | | |
199 | 198 | | |
200 | 199 | | |
| |||
318 | 317 | | |
319 | 318 | | |
320 | 319 | | |
321 | | - | |
322 | 320 | | |
323 | 321 | | |
324 | 322 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
43 | 43 | | |
44 | 44 | | |
45 | 45 | | |
| 46 | + | |
| 47 | + | |
46 | 48 | | |
47 | 49 | | |
48 | 50 | | |
| |||
0 commit comments