From: Brandt Bucher Date: Thu, 22 Aug 2024 10:50:55 +0000 (-0700) Subject: GH-118093: Specialize calls to non-vectorcall classes as `CALL_NON_PY_GENERAL` (GH... X-Git-Tag: v3.14.0a1~724 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=427b106162c7467de8a84476a053dfba9ef16dfa;p=thirdparty%2FPython%2Fcpython.git GH-118093: Specialize calls to non-vectorcall classes as `CALL_NON_PY_GENERAL` (GH-123212) Specialize classes without vectorcall as CALL_NON_PY_GENERAL --- diff --git a/Python/specialize.c b/Python/specialize.c index db794bea0bee..26965fe2e136 100644 --- a/Python/specialize.c +++ b/Python/specialize.c @@ -562,8 +562,6 @@ _PyCode_Quicken(PyCodeObject *code) #define SPEC_FAIL_CALL_INIT_NOT_PYTHON 21 #define SPEC_FAIL_CALL_PEP_523 22 #define SPEC_FAIL_CALL_BOUND_METHOD 23 -#define SPEC_FAIL_CALL_STR 24 -#define SPEC_FAIL_CALL_CLASS_NO_VECTORCALL 25 #define SPEC_FAIL_CALL_CLASS_MUTABLE 26 #define SPEC_FAIL_CALL_METHOD_WRAPPER 28 #define SPEC_FAIL_CALL_OPERATOR_WRAPPER 29 @@ -1800,9 +1798,7 @@ specialize_class_call(PyObject *callable, _Py_CODEUNIT *instr, int nargs) instr->op.code = CALL_BUILTIN_CLASS; return 0; } - SPECIALIZATION_FAIL(CALL, tp == &PyUnicode_Type ? - SPEC_FAIL_CALL_STR : SPEC_FAIL_CALL_CLASS_NO_VECTORCALL); - return -1; + goto generic; } if (Py_TYPE(tp) != &PyType_Type) { goto generic;