Commit 03334a8
authored
[AutoDiff] Generalize handling of semantic result parameters (#67230)
Introduce the notion of "semantic result parameter". Handle differentiation of inouts via semantic result parameter abstraction. Do not consider non-wrt semantic result parameters as semantic results
Fixes #671741 parent bb6df83 commit 03334a8
File tree
24 files changed
+365
-281
lines changed- include/swift
- AST
- SIL
- lib
- AST
- SILOptimizer
- Analysis
- Differentiation
- Mandatory
- SIL/IR
- test/AutoDiff
- SILGen
- SILOptimizer
- Sema
- compiler_crashers_fixed
- validation-test
24 files changed
+365
-281
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
246 | 246 | | |
247 | 247 | | |
248 | 248 | | |
249 | | - | |
250 | | - | |
| 249 | + | |
| 250 | + | |
| 251 | + | |
251 | 252 | | |
252 | 253 | | |
253 | 254 | | |
254 | | - | |
255 | | - | |
| 255 | + | |
256 | 256 | | |
257 | | - | |
258 | | - | |
| 257 | + | |
| 258 | + | |
259 | 259 | | |
260 | 260 | | |
261 | 261 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3192 | 3192 | | |
3193 | 3193 | | |
3194 | 3194 | | |
| 3195 | + | |
| 3196 | + | |
| 3197 | + | |
| 3198 | + | |
| 3199 | + | |
| 3200 | + | |
3195 | 3201 | | |
3196 | 3202 | | |
3197 | 3203 | | |
| |||
3509 | 3515 | | |
3510 | 3516 | | |
3511 | 3517 | | |
3512 | | - | |
3513 | | - | |
| 3518 | + | |
| 3519 | + | |
3514 | 3520 | | |
3515 | 3521 | | |
3516 | 3522 | | |
3517 | 3523 | | |
3518 | 3524 | | |
3519 | 3525 | | |
3520 | 3526 | | |
3521 | | - | |
3522 | | - | |
3523 | | - | |
3524 | | - | |
| 3527 | + | |
3525 | 3528 | | |
3526 | 3529 | | |
3527 | 3530 | | |
| |||
3531 | 3534 | | |
3532 | 3535 | | |
3533 | 3536 | | |
3534 | | - | |
3535 | | - | |
3536 | | - | |
3537 | | - | |
| 3537 | + | |
3538 | 3538 | | |
3539 | 3539 | | |
3540 | 3540 | | |
| |||
4101 | 4101 | | |
4102 | 4102 | | |
4103 | 4103 | | |
| 4104 | + | |
| 4105 | + | |
| 4106 | + | |
4104 | 4107 | | |
4105 | 4108 | | |
4106 | 4109 | | |
| |||
4836 | 4839 | | |
4837 | 4840 | | |
4838 | 4841 | | |
| 4842 | + | |
| 4843 | + | |
| 4844 | + | |
| 4845 | + | |
| 4846 | + | |
| 4847 | + | |
| 4848 | + | |
| 4849 | + | |
| 4850 | + | |
| 4851 | + | |
| 4852 | + | |
| 4853 | + | |
| 4854 | + | |
| 4855 | + | |
| 4856 | + | |
| 4857 | + | |
| 4858 | + | |
| 4859 | + | |
| 4860 | + | |
| 4861 | + | |
| 4862 | + | |
| 4863 | + | |
| 4864 | + | |
| 4865 | + | |
| 4866 | + | |
| 4867 | + | |
| 4868 | + | |
| 4869 | + | |
| 4870 | + | |
| 4871 | + | |
| 4872 | + | |
4839 | 4873 | | |
4840 | 4874 | | |
4841 | 4875 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
681 | 681 | | |
682 | 682 | | |
683 | 683 | | |
| 684 | + | |
| 685 | + | |
| 686 | + | |
| 687 | + | |
| 688 | + | |
| 689 | + | |
| 690 | + | |
| 691 | + | |
| 692 | + | |
| 693 | + | |
| 694 | + | |
| 695 | + | |
684 | 696 | | |
685 | 697 | | |
686 | 698 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2785 | 2785 | | |
2786 | 2786 | | |
2787 | 2787 | | |
| 2788 | + | |
| 2789 | + | |
| 2790 | + | |
| 2791 | + | |
| 2792 | + | |
| 2793 | + | |
| 2794 | + | |
| 2795 | + | |
| 2796 | + | |
| 2797 | + | |
| 2798 | + | |
| 2799 | + | |
| 2800 | + | |
| 2801 | + | |
| 2802 | + | |
| 2803 | + | |
| 2804 | + | |
| 2805 | + | |
| 2806 | + | |
2788 | 2807 | | |
2789 | 2808 | | |
2790 | 2809 | | |
| |||
2894 | 2913 | | |
2895 | 2914 | | |
2896 | 2915 | | |
| 2916 | + | |
| 2917 | + | |
| 2918 | + | |
| 2919 | + | |
| 2920 | + | |
| 2921 | + | |
| 2922 | + | |
| 2923 | + | |
| 2924 | + | |
| 2925 | + | |
2897 | 2926 | | |
2898 | 2927 | | |
2899 | 2928 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
199 | 199 | | |
200 | 200 | | |
201 | 201 | | |
202 | | - | |
| 202 | + | |
203 | 203 | | |
204 | 204 | | |
205 | 205 | | |
206 | | - | |
| 206 | + | |
207 | 207 | | |
208 | 208 | | |
209 | 209 | | |
210 | | - | |
211 | | - | |
212 | | - | |
213 | | - | |
214 | | - | |
| 210 | + | |
| 211 | + | |
215 | 212 | | |
216 | 213 | | |
217 | 214 | | |
218 | | - | |
| 215 | + | |
219 | 216 | | |
220 | 217 | | |
221 | 218 | | |
222 | 219 | | |
223 | 220 | | |
224 | | - | |
225 | | - | |
| 221 | + | |
226 | 222 | | |
227 | | - | |
| 223 | + | |
228 | 224 | | |
229 | 225 | | |
230 | 226 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
5558 | 5558 | | |
5559 | 5559 | | |
5560 | 5560 | | |
5561 | | - | |
| 5561 | + | |
5562 | 5562 | | |
5563 | 5563 | | |
5564 | 5564 | | |
| |||
5577 | 5577 | | |
5578 | 5578 | | |
5579 | 5579 | | |
5580 | | - | |
| 5580 | + | |
5581 | 5581 | | |
5582 | | - | |
5583 | | - | |
5584 | 5582 | | |
5585 | 5583 | | |
5586 | | - | |
5587 | | - | |
5588 | | - | |
5589 | | - | |
5590 | 5584 | | |
5591 | 5585 | | |
5592 | 5586 | | |
| |||
5597 | 5591 | | |
5598 | 5592 | | |
5599 | 5593 | | |
5600 | | - | |
5601 | | - | |
5602 | | - | |
5603 | | - | |
5604 | | - | |
| 5594 | + | |
5605 | 5595 | | |
5606 | 5596 | | |
5607 | 5597 | | |
| |||
5648 | 5638 | | |
5649 | 5639 | | |
5650 | 5640 | | |
5651 | | - | |
5652 | | - | |
5653 | | - | |
5654 | | - | |
5655 | | - | |
| 5641 | + | |
5656 | 5642 | | |
5657 | 5643 | | |
5658 | 5644 | | |
5659 | | - | |
| 5645 | + | |
5660 | 5646 | | |
5661 | 5647 | | |
5662 | 5648 | | |
| |||
5669 | 5655 | | |
5670 | 5656 | | |
5671 | 5657 | | |
5672 | | - | |
| 5658 | + | |
5673 | 5659 | | |
5674 | 5660 | | |
5675 | | - | |
| 5661 | + | |
5676 | 5662 | | |
5677 | 5663 | | |
5678 | 5664 | | |
| |||
5693 | 5679 | | |
5694 | 5680 | | |
5695 | 5681 | | |
5696 | | - | |
5697 | | - | |
5698 | | - | |
5699 | | - | |
5700 | | - | |
5701 | | - | |
| 5682 | + | |
| 5683 | + | |
| 5684 | + | |
| 5685 | + | |
| 5686 | + | |
| 5687 | + | |
5702 | 5688 | | |
5703 | 5689 | | |
5704 | | - | |
| 5690 | + | |
5705 | 5691 | | |
5706 | 5692 | | |
5707 | 5693 | | |
5708 | 5694 | | |
5709 | 5695 | | |
5710 | 5696 | | |
5711 | 5697 | | |
| 5698 | + | |
5712 | 5699 | | |
5713 | 5700 | | |
5714 | 5701 | | |
| |||
0 commit comments