Commit a791373
authored
[mono][aot] Prevent localloc in a loop during constrained gsharedvt calls (dotnet#117679)
* [mono][aot] Prevent localloc in a loop during constrained gsharedvt calls
We create a var that stores the address of some localloc memory. This var is nulled at method entry. In every place where we need to obtain temporary localloc memory, we check if the cache var was initialized, if not we do a localloc, otherwise we use the cached ptr as the temporary memory buffer. This commit adds 2 such caches because the constrained gsharedvt call can require 2 separate temporary buffers.
* Re-enable test
* milos review1 parent 6e14d81 commit a791373
File tree
3 files changed
+66
-11
lines changed- src
- libraries/System.Runtime/tests/System.Runtime.Tests/System
- mono/mono/mini
3 files changed
+66
-11
lines changedLines changed: 0 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
993 | 993 | | |
994 | 994 | | |
995 | 995 | | |
996 | | - | |
997 | 996 | | |
998 | 997 | | |
999 | 998 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3732 | 3732 | | |
3733 | 3733 | | |
3734 | 3734 | | |
| 3735 | + | |
| 3736 | + | |
| 3737 | + | |
| 3738 | + | |
| 3739 | + | |
| 3740 | + | |
| 3741 | + | |
| 3742 | + | |
| 3743 | + | |
| 3744 | + | |
| 3745 | + | |
| 3746 | + | |
| 3747 | + | |
| 3748 | + | |
| 3749 | + | |
| 3750 | + | |
| 3751 | + | |
| 3752 | + | |
| 3753 | + | |
| 3754 | + | |
| 3755 | + | |
| 3756 | + | |
| 3757 | + | |
| 3758 | + | |
| 3759 | + | |
| 3760 | + | |
| 3761 | + | |
| 3762 | + | |
| 3763 | + | |
| 3764 | + | |
| 3765 | + | |
| 3766 | + | |
| 3767 | + | |
| 3768 | + | |
| 3769 | + | |
| 3770 | + | |
| 3771 | + | |
| 3772 | + | |
| 3773 | + | |
3735 | 3774 | | |
3736 | 3775 | | |
3737 | 3776 | | |
| |||
3865 | 3904 | | |
3866 | 3905 | | |
3867 | 3906 | | |
3868 | | - | |
3869 | | - | |
3870 | | - | |
3871 | | - | |
3872 | | - | |
| 3907 | + | |
3873 | 3908 | | |
3874 | 3909 | | |
3875 | 3910 | | |
3876 | 3911 | | |
3877 | | - | |
3878 | | - | |
3879 | | - | |
3880 | | - | |
3881 | | - | |
| 3912 | + | |
3882 | 3913 | | |
3883 | 3914 | | |
3884 | 3915 | | |
| |||
12335 | 12366 | | |
12336 | 12367 | | |
12337 | 12368 | | |
| 12369 | + | |
| 12370 | + | |
| 12371 | + | |
| 12372 | + | |
| 12373 | + | |
| 12374 | + | |
| 12375 | + | |
| 12376 | + | |
| 12377 | + | |
| 12378 | + | |
| 12379 | + | |
| 12380 | + | |
| 12381 | + | |
| 12382 | + | |
| 12383 | + | |
| 12384 | + | |
12338 | 12385 | | |
12339 | 12386 | | |
| 12387 | + | |
12340 | 12388 | | |
12341 | 12389 | | |
12342 | 12390 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1306 | 1306 | | |
1307 | 1307 | | |
1308 | 1308 | | |
| 1309 | + | |
| 1310 | + | |
| 1311 | + | |
| 1312 | + | |
| 1313 | + | |
| 1314 | + | |
1309 | 1315 | | |
1310 | 1316 | | |
1311 | 1317 | | |
| |||
1661 | 1667 | | |
1662 | 1668 | | |
1663 | 1669 | | |
| 1670 | + | |
| 1671 | + | |
1664 | 1672 | | |
1665 | 1673 | | |
1666 | 1674 | | |
| |||
0 commit comments