mirror of
https://github.com/python/cpython.git
synced 2025-08-04 00:48:58 +00:00
GH-120024: Remove CHECK_EVAL_BREAKER
macro. (GH-122968)
* Factor some instructions into micro-ops to isolate CHECK_EVAL_BREAKER for escape analysis * Eliminate CHECK_EVAL_BREAKER macro
This commit is contained in:
parent
315a933a5b
commit
eec7bdaf01
16 changed files with 821 additions and 518 deletions
|
@ -133,16 +133,6 @@ do { \
|
|||
// Use this instead of 'goto error' so Tier 2 can go to a different label
|
||||
#define GOTO_ERROR(LABEL) goto LABEL
|
||||
|
||||
#define CHECK_EVAL_BREAKER() \
|
||||
_Py_CHECK_EMSCRIPTEN_SIGNALS_PERIODICALLY(); \
|
||||
QSBR_QUIESCENT_STATE(tstate); \
|
||||
if (_Py_atomic_load_uintptr_relaxed(&tstate->eval_breaker) & _PY_EVAL_EVENTS_MASK) { \
|
||||
if (_Py_HandlePending(tstate) != 0) { \
|
||||
GOTO_ERROR(error); \
|
||||
} \
|
||||
}
|
||||
|
||||
|
||||
/* Tuple access macros */
|
||||
|
||||
#ifndef Py_DEBUG
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue