| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
Sorry, something went wrong.
There was a problem hiding this comment.
lgtm, thanks @markshannon !
Sorry, something went wrong.
| @@ -1466,6 +1467,11 @@ specialize_py_call(PyFunctionObject *func, _Py_CODEUNIT *instr, int nargs, | |||
| assert(_Py_OPCODE(*instr) == CALL_ADAPTIVE); | |||
| PyCodeObject *code = (PyCodeObject *)func->func_code; | |||
There was a problem hiding this comment.
will we want to add a check here for overridden vectorcall on func as well, or is it already covered somewhere else? (assuming the vectorcall set API sets the version to zero)
Sorry, something went wrong.
There was a problem hiding this comment.
I think we want to check for that in #92257
Sorry, something went wrong.
| def test_specialize_before_intercept(self): | ||
| def func2(): | ||
| pass | ||
| for _ in range(SUFFICIENT_TO_SPECIALIZE): | ||
| func2() | ||
| self.do_test(func2) |
There was a problem hiding this comment.
more for my understanding - this test case fails without the added PEP-523 checks? (but the other one passes?)
Sorry, something went wrong.
There was a problem hiding this comment.
Both tests should fail without the checks.
Sorry, something went wrong.
|
|
||
| TARGET(CALL_PY_EXACT_ARGS) { | ||
| assert(call_shape.kwnames == NULL); | ||
| DEOPT_IF(tstate->interp->eval_frame, CALL); |
There was a problem hiding this comment.
I don't know how to verify that these opcodes (CALL_PY_EXACT_ARGS & CALL_PY_WITH_DEFAULTS) are the only ones where this check is needed - I trust you :)
Sorry, something went wrong.
Sorry, something went wrong.
| Back | FazBrowse Home | New Git URL |
Make sure that we respect PEP 523 when specializing