@@ -1231,40 +1231,6 @@ eval_frame_handle_pending(PyThreadState *tstate)
12311231 return 0 ;
12321232}
12331233
1234- PyObject * _Py_HOT_FUNCTION
1235- _PyEval_EvalFrameDefault (PyThreadState * tstate , PyFrameObject * f , int throwflag )
1236- {
1237- _Py_EnsureTstateNotNULL (tstate );
1238-
1239- #ifdef DXPAIRS
1240- int lastopcode = 0 ;
1241- #endif
1242- PyObject * * stack_pointer ; /* Next free slot in value stack */
1243- const _Py_CODEUNIT * next_instr ;
1244- int opcode ; /* Current opcode */
1245- int oparg ; /* Current opcode argument, if any */
1246- PyObject * * fastlocals , * * freevars ;
1247- PyObject * retval = NULL ; /* Return value */
1248- struct _ceval_state * const ceval2 = & tstate -> interp -> ceval ;
1249- _Py_atomic_int * const eval_breaker = & ceval2 -> eval_breaker ;
1250- PyCodeObject * co ;
1251-
1252- /* when tracing we set things up so that
1253-
1254- not (instr_lb <= current_bytecode_offset < instr_ub)
1255-
1256- is true when the line being executed has changed. The
1257- initial values are such as to make this false the first
1258- time it is tested. */
1259-
1260- const _Py_CODEUNIT * first_instr ;
1261- PyObject * names ;
1262- PyObject * consts ;
1263- _PyOpcache * co_opcache ;
1264-
1265- #ifdef LLTRACE
1266- _Py_IDENTIFIER (__ltrace__ );
1267- #endif
12681234
12691235/* Computed GOTOs, or
12701236 the-optimization-commonly-but-improperly-known-as-"threaded code"
@@ -1323,9 +1289,6 @@ _PyEval_EvalFrameDefault(PyThreadState *tstate, PyFrameObject *f, int throwflag)
13231289#endif
13241290
13251291#if USE_COMPUTED_GOTOS
1326- /* Import the static jump table */
1327- #include "opcode_targets.h"
1328-
13291292#define TARGET (op ) \
13301293 op: \
13311294 TARGET_##op
@@ -1619,7 +1582,46 @@ _PyEval_EvalFrameDefault(PyThreadState *tstate, PyFrameObject *f, int throwflag)
16191582
16201583#endif
16211584
1622- /* Start of code */
1585+
1586+ PyObject * _Py_HOT_FUNCTION
1587+ _PyEval_EvalFrameDefault (PyThreadState * tstate , PyFrameObject * f , int throwflag )
1588+ {
1589+ _Py_EnsureTstateNotNULL (tstate );
1590+
1591+ #if USE_COMPUTED_GOTOS
1592+ /* Import the static jump table */
1593+ #include "opcode_targets.h"
1594+ #endif
1595+
1596+ #ifdef DXPAIRS
1597+ int lastopcode = 0 ;
1598+ #endif
1599+ PyObject * * stack_pointer ; /* Next free slot in value stack */
1600+ const _Py_CODEUNIT * next_instr ;
1601+ int opcode ; /* Current opcode */
1602+ int oparg ; /* Current opcode argument, if any */
1603+ PyObject * * fastlocals , * * freevars ;
1604+ PyObject * retval = NULL ; /* Return value */
1605+ struct _ceval_state * const ceval2 = & tstate -> interp -> ceval ;
1606+ _Py_atomic_int * const eval_breaker = & ceval2 -> eval_breaker ;
1607+ PyCodeObject * co ;
1608+
1609+ /* when tracing we set things up so that
1610+
1611+ not (instr_lb <= current_bytecode_offset < instr_ub)
1612+
1613+ is true when the line being executed has changed. The
1614+ initial values are such as to make this false the first
1615+ time it is tested. */
1616+
1617+ const _Py_CODEUNIT * first_instr ;
1618+ PyObject * names ;
1619+ PyObject * consts ;
1620+ _PyOpcache * co_opcache ;
1621+
1622+ #ifdef LLTRACE
1623+ _Py_IDENTIFIER (__ltrace__ );
1624+ #endif
16231625
16241626 if (_Py_EnterRecursiveCall (tstate , "" )) {
16251627 return NULL ;
0 commit comments