homepage

This issue tracker has been migrated to GitHub , and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author methane
Recipients methane, python-dev, vstinner, yselivanov
Date 2017年02月02日.01:17:23
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1485998246.37.0.792073597156.issue29263@psf.upfronthosting.co.za>
In-reply-to
Content
LOAD_METHOD support was based on tp_fastcall.
Without LOAD_METHOD support, methoddescr_get is called and
stack layout after LOAD_METHOD is:
 NULL, (bound)PyCFunction, arg1, arg2, ... argN
With LOAD_METHOD support, stack layout is:
 PyMethodDescrObject, self, arg1, ... argN
And tp_call (or tp_fastcall) of method descriptor is called when CALL_METHOD.
Without tp_fastcall, it means pack&unpack tuple happens.
It is more heavy than creating temporary PyCFunction.
---
Other ideas to support LOAD_METHOD for C function are:
* Add _PyMethodDescr_FastCallKeywords and call it in call_function.
* Create unbound PyCFunction and cache it
History
Date User Action Args
2017年02月02日 01:17:26methanesetrecipients: + methane, vstinner, python-dev, yselivanov
2017年02月02日 01:17:26methanesetmessageid: <1485998246.37.0.792073597156.issue29263@psf.upfronthosting.co.za>
2017年02月02日 01:17:26methanelinkissue29263 messages
2017年02月02日 01:17:23methanecreate

AltStyle によって変換されたページ (->オリジナル) /