Optimize _PyCFunction_FastCallKeywords()
Issue #29259: Write fast path in _PyCFunction_FastCallKeywords() for METH_FASTCALL, avoid the creation of a temporary dictionary for keyword arguments. Cleanup also _PyCFunction_FastCallDict(): * Don't dereference func before checking that it's not NULL * Move code to raise the "no keyword argument" exception into a new no_keyword_error label. Update python-gdb.py for the change.
This commit is contained in:
@@ -1518,7 +1518,8 @@ class Frame(object):
|
||||
except RuntimeError:
|
||||
return 'PyCFunction invocation (unable to read "func")'
|
||||
|
||||
elif caller == '_PyCFunction_FastCallDict':
|
||||
elif caller in {'_PyCFunction_FastCallDict',
|
||||
'_PyCFunction_FastCallKeywords'}:
|
||||
try:
|
||||
func = older._gdbframe.read_var('func_obj')
|
||||
return str(func)
|
||||
|
||||
Reference in New Issue
Block a user