Commit d1dffe2
authored
[mypyc] feat: PyObject_CallObject op for fn(*args) fastpath (#19631)
This PR adds a new custom_op for PyObject_CallObject which is more
efficient than PyObject_Call in cases where there are no kwargs.
posarg-only use cases are already optimized but this is helpful for
patterns such as `fn(*args)` or `fn(a1, a2, *args)`
This PR extends #19623 and #19629 , as this change will not be helpful
until those PRs are merged.1 parent 50fc847 commit d1dffe2
File tree
4 files changed
+39
-38
lines changed- mypyc
- irbuild
- primitives
- test-data
4 files changed
+39
-38
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
77 | 77 | | |
78 | 78 | | |
79 | 79 | | |
| 80 | + | |
80 | 81 | | |
81 | 82 | | |
82 | 83 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
141 | 141 | | |
142 | 142 | | |
143 | 143 | | |
| 144 | + | |
144 | 145 | | |
145 | 146 | | |
146 | 147 | | |
| |||
805 | 806 | | |
806 | 807 | | |
807 | 808 | | |
808 | | - | |
| 809 | + | |
809 | 810 | | |
810 | 811 | | |
811 | 812 | | |
| |||
938 | 939 | | |
939 | 940 | | |
940 | 941 | | |
941 | | - | |
| 942 | + | |
942 | 943 | | |
943 | 944 | | |
944 | 945 | | |
| |||
964 | 965 | | |
965 | 966 | | |
966 | 967 | | |
967 | | - | |
| 968 | + | |
968 | 969 | | |
969 | 970 | | |
970 | 971 | | |
971 | 972 | | |
972 | 973 | | |
973 | | - | |
| 974 | + | |
| 975 | + | |
| 976 | + | |
| 977 | + | |
974 | 978 | | |
975 | 979 | | |
976 | 980 | | |
| |||
1169 | 1173 | | |
1170 | 1174 | | |
1171 | 1175 | | |
1172 | | - | |
1173 | | - | |
| 1176 | + | |
1174 | 1177 | | |
1175 | 1178 | | |
1176 | 1179 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
308 | 308 | | |
309 | 309 | | |
310 | 310 | | |
| 311 | + | |
| 312 | + | |
| 313 | + | |
| 314 | + | |
| 315 | + | |
| 316 | + | |
| 317 | + | |
| 318 | + | |
| 319 | + | |
311 | 320 | | |
312 | 321 | | |
313 | 322 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1674 | 1674 | | |
1675 | 1675 | | |
1676 | 1676 | | |
1677 | | - | |
1678 | | - | |
1679 | | - | |
1680 | | - | |
| 1677 | + | |
| 1678 | + | |
1681 | 1679 | | |
1682 | 1680 | | |
1683 | 1681 | | |
1684 | 1682 | | |
1685 | 1683 | | |
1686 | | - | |
1687 | | - | |
1688 | | - | |
1689 | | - | |
1690 | | - | |
| 1684 | + | |
| 1685 | + | |
| 1686 | + | |
| 1687 | + | |
1691 | 1688 | | |
1692 | 1689 | | |
1693 | 1690 | | |
| |||
1698 | 1695 | | |
1699 | 1696 | | |
1700 | 1697 | | |
1701 | | - | |
1702 | | - | |
1703 | | - | |
| 1698 | + | |
| 1699 | + | |
1704 | 1700 | | |
1705 | 1701 | | |
1706 | 1702 | | |
| |||
1714 | 1710 | | |
1715 | 1711 | | |
1716 | 1712 | | |
1717 | | - | |
1718 | | - | |
1719 | | - | |
1720 | | - | |
| 1713 | + | |
| 1714 | + | |
| 1715 | + | |
1721 | 1716 | | |
1722 | 1717 | | |
1723 | 1718 | | |
| |||
3562 | 3557 | | |
3563 | 3558 | | |
3564 | 3559 | | |
3565 | | - | |
3566 | | - | |
3567 | | - | |
| 3560 | + | |
3568 | 3561 | | |
3569 | 3562 | | |
3570 | 3563 | | |
3571 | | - | |
3572 | | - | |
3573 | | - | |
| 3564 | + | |
| 3565 | + | |
3574 | 3566 | | |
3575 | 3567 | | |
3576 | 3568 | | |
| |||
3613 | 3605 | | |
3614 | 3606 | | |
3615 | 3607 | | |
3616 | | - | |
3617 | | - | |
| 3608 | + | |
3618 | 3609 | | |
3619 | 3610 | | |
3620 | 3611 | | |
3621 | 3612 | | |
3622 | | - | |
3623 | | - | |
3624 | | - | |
| 3613 | + | |
| 3614 | + | |
3625 | 3615 | | |
3626 | 3616 | | |
3627 | 3617 | | |
| |||
3716 | 3706 | | |
3717 | 3707 | | |
3718 | 3708 | | |
3719 | | - | |
3720 | | - | |
| 3709 | + | |
3721 | 3710 | | |
3722 | 3711 | | |
3723 | 3712 | | |
3724 | 3713 | | |
3725 | | - | |
3726 | | - | |
3727 | | - | |
| 3714 | + | |
| 3715 | + | |
3728 | 3716 | | |
3729 | 3717 | | |
3730 | 3718 | | |
| |||
0 commit comments