Commit 2d81d0f
committed
[SIL] Add a new attribute [serialized_for_package] to support
package-wide resilience domain if Package CMO is enabled.
The purpose of the attribute includes:
- Indicates that certain types such as loadable types are
allowed in serialized functions in resiliently built module
if the optimization is enabled, which are otherwise disallowed.
- Used during SIL deserialization to determine whether such
functions are allowed.
- Used to determine if a callee can be inlined into a caller
that's serialized without package-cmo, e.g. with an explicit
annotation like @inlinable, where the callee was serialized
due to package-cmo.
Resolves rdar://1278708221 parent 1b848ac commit 2d81d0f
File tree
14 files changed
+405
-277
lines changed- include/swift/SIL
- lib
- SILOptimizer
- IPO
- Utils
- SIL
- IR
- Parser
- Verifier
- Serialization
- test/SILOptimizer
14 files changed
+405
-277
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
363 | 363 | | |
364 | 364 | | |
365 | 365 | | |
| 366 | + | |
| 367 | + | |
| 368 | + | |
| 369 | + | |
366 | 370 | | |
367 | 371 | | |
368 | 372 | | |
| |||
1138 | 1142 | | |
1139 | 1143 | | |
1140 | 1144 | | |
| 1145 | + | |
| 1146 | + | |
| 1147 | + | |
| 1148 | + | |
| 1149 | + | |
| 1150 | + | |
| 1151 | + | |
| 1152 | + | |
| 1153 | + | |
| 1154 | + | |
| 1155 | + | |
| 1156 | + | |
| 1157 | + | |
| 1158 | + | |
| 1159 | + | |
| 1160 | + | |
1141 | 1161 | | |
1142 | 1162 | | |
1143 | 1163 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
162 | 162 | | |
163 | 163 | | |
164 | 164 | | |
| 165 | + | |
| 166 | + | |
| 167 | + | |
| 168 | + | |
| 169 | + | |
165 | 170 | | |
166 | 171 | | |
167 | 172 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
523 | 523 | | |
524 | 524 | | |
525 | 525 | | |
526 | | - | |
527 | | - | |
| 526 | + | |
| 527 | + | |
528 | 528 | | |
529 | 529 | | |
530 | 530 | | |
531 | 531 | | |
| 532 | + | |
| 533 | + | |
| 534 | + | |
| 535 | + | |
| 536 | + | |
| 537 | + | |
| 538 | + | |
| 539 | + | |
| 540 | + | |
| 541 | + | |
532 | 542 | | |
533 | 543 | | |
534 | 544 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3341 | 3341 | | |
3342 | 3342 | | |
3343 | 3343 | | |
| 3344 | + | |
| 3345 | + | |
| 3346 | + | |
| 3347 | + | |
| 3348 | + | |
| 3349 | + | |
| 3350 | + | |
| 3351 | + | |
3344 | 3352 | | |
3345 | 3353 | | |
3346 | 3354 | | |
| |||
3528 | 3536 | | |
3529 | 3537 | | |
3530 | 3538 | | |
3531 | | - | |
| 3539 | + | |
3532 | 3540 | | |
3533 | 3541 | | |
3534 | 3542 | | |
| |||
3840 | 3848 | | |
3841 | 3849 | | |
3842 | 3850 | | |
3843 | | - | |
| 3851 | + | |
3844 | 3852 | | |
3845 | 3853 | | |
3846 | 3854 | | |
| |||
4019 | 4027 | | |
4020 | 4028 | | |
4021 | 4029 | | |
| 4030 | + | |
4022 | 4031 | | |
4023 | 4032 | | |
4024 | 4033 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2324 | 2324 | | |
2325 | 2325 | | |
2326 | 2326 | | |
| 2327 | + | |
| 2328 | + | |
| 2329 | + | |
2327 | 2330 | | |
2328 | 2331 | | |
2329 | | - | |
| 2332 | + | |
| 2333 | + | |
| 2334 | + | |
| 2335 | + | |
| 2336 | + | |
| 2337 | + | |
2330 | 2338 | | |
2331 | 2339 | | |
2332 | | - | |
| 2340 | + | |
| 2341 | + | |
2333 | 2342 | | |
2334 | | - | |
2335 | | - | |
2336 | | - | |
2337 | 2343 | | |
2338 | | - | |
2339 | | - | |
2340 | | - | |
2341 | | - | |
2342 | | - | |
2343 | | - | |
2344 | | - | |
| 2344 | + | |
| 2345 | + | |
| 2346 | + | |
| 2347 | + | |
| 2348 | + | |
2345 | 2349 | | |
2346 | 2350 | | |
2347 | 2351 | | |
2348 | 2352 | | |
2349 | 2353 | | |
2350 | 2354 | | |
2351 | | - | |
2352 | 2355 | | |
2353 | 2356 | | |
2354 | 2357 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
665 | 665 | | |
666 | 666 | | |
667 | 667 | | |
668 | | - | |
| 668 | + | |
| 669 | + | |
669 | 670 | | |
670 | 671 | | |
671 | 672 | | |
| |||
676 | 677 | | |
677 | 678 | | |
678 | 679 | | |
679 | | - | |
680 | | - | |
681 | | - | |
682 | | - | |
| 680 | + | |
| 681 | + | |
| 682 | + | |
683 | 683 | | |
684 | 684 | | |
685 | 685 | | |
| |||
697 | 697 | | |
698 | 698 | | |
699 | 699 | | |
| 700 | + | |
| 701 | + | |
| 702 | + | |
700 | 703 | | |
701 | 704 | | |
702 | 705 | | |
| |||
7106 | 7109 | | |
7107 | 7110 | | |
7108 | 7111 | | |
| 7112 | + | |
7109 | 7113 | | |
7110 | 7114 | | |
7111 | 7115 | | |
| |||
7138 | 7142 | | |
7139 | 7143 | | |
7140 | 7144 | | |
7141 | | - | |
7142 | | - | |
7143 | | - | |
| 7145 | + | |
| 7146 | + | |
| 7147 | + | |
7144 | 7148 | | |
7145 | 7149 | | |
7146 | 7150 | | |
7147 | 7151 | | |
7148 | | - | |
7149 | | - | |
7150 | | - | |
7151 | | - | |
| 7152 | + | |
| 7153 | + | |
| 7154 | + | |
| 7155 | + | |
7152 | 7156 | | |
7153 | 7157 | | |
7154 | 7158 | | |
| |||
7173 | 7177 | | |
7174 | 7178 | | |
7175 | 7179 | | |
| 7180 | + | |
| 7181 | + | |
7176 | 7182 | | |
7177 | 7183 | | |
7178 | 7184 | | |
| |||
7399 | 7405 | | |
7400 | 7406 | | |
7401 | 7407 | | |
7402 | | - | |
7403 | | - | |
7404 | 7408 | | |
7405 | | - | |
| 7409 | + | |
| 7410 | + | |
7406 | 7411 | | |
7407 | 7412 | | |
7408 | 7413 | | |
| |||
7454 | 7459 | | |
7455 | 7460 | | |
7456 | 7461 | | |
7457 | | - | |
| 7462 | + | |
7458 | 7463 | | |
7459 | 7464 | | |
7460 | 7465 | | |
| |||
7524 | 7529 | | |
7525 | 7530 | | |
7526 | 7531 | | |
7527 | | - | |
| 7532 | + | |
7528 | 7533 | | |
7529 | 7534 | | |
7530 | 7535 | | |
| |||
7647 | 7652 | | |
7648 | 7653 | | |
7649 | 7654 | | |
7650 | | - | |
| 7655 | + | |
| 7656 | + | |
7651 | 7657 | | |
7652 | 7658 | | |
7653 | 7659 | | |
| |||
8134 | 8140 | | |
8135 | 8141 | | |
8136 | 8142 | | |
8137 | | - | |
| 8143 | + | |
8138 | 8144 | | |
8139 | 8145 | | |
8140 | 8146 | | |
| |||
0 commit comments