Move the code for BREAK and CONTINUE_LOOP to be near FOR_ITER.

Makes it more likely that all loop operations are in the cache
at the same time.
This commit is contained in:
Raymond Hettinger 2004-03-12 09:12:22 +00:00
parent db0de9e7ca
commit 2d783e9b16
1 changed files with 9 additions and 9 deletions

View File

@ -1583,15 +1583,6 @@ eval_frame(PyFrameObject *f)
#ifdef CASE_TOO_BIG
default: switch (opcode) {
#endif
case BREAK_LOOP:
why = WHY_BREAK;
goto fast_block_end;
case CONTINUE_LOOP:
retval = PyInt_FromLong(oparg);
why = WHY_CONTINUE;
goto fast_block_end;
case RAISE_VARARGS:
u = v = w = NULL;
switch (oparg) {
@ -2109,6 +2100,15 @@ eval_frame(PyFrameObject *f)
JUMPBY(oparg);
continue;
case BREAK_LOOP:
why = WHY_BREAK;
goto fast_block_end;
case CONTINUE_LOOP:
retval = PyInt_FromLong(oparg);
why = WHY_CONTINUE;
goto fast_block_end;
case SETUP_LOOP:
case SETUP_EXCEPT:
case SETUP_FINALLY: