mirror of
https://github.com/python/cpython.git
synced 2025-08-04 00:48:58 +00:00
gh-104584: Change DEOPT_IF in uops executor (#106146)
This effectively reverts bb578a0
, restoring the original DEOPT_IF() macro in ceval_macros.h, and redefining it in the Tier 2 interpreter. We can get rid of the PREDICTED() macros there as well!
This commit is contained in:
parent
5290881009
commit
6b5166fb12
2 changed files with 7 additions and 12 deletions
|
@ -264,12 +264,11 @@ GETITEM(PyObject *v, Py_ssize_t i) {
|
|||
#define UPDATE_MISS_STATS(INSTNAME) ((void)0)
|
||||
#endif
|
||||
|
||||
// NOTE: in the uops version, opcode may be > 255
|
||||
#define DEOPT_IF(COND, INSTNAME) \
|
||||
if ((COND)) { \
|
||||
/* This is only a single jump on release builds! */ \
|
||||
UPDATE_MISS_STATS((INSTNAME)); \
|
||||
assert(opcode >= 256 || _PyOpcode_Deopt[opcode] == (INSTNAME)); \
|
||||
assert(_PyOpcode_Deopt[opcode] == (INSTNAME)); \
|
||||
GO_TO_INSTRUCTION(INSTNAME); \
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue