Skip to content

Commit 45161c0

Browse files
Address review
1 parent 98e5e68 commit 45161c0

File tree

10 files changed

+1198
-1411
lines changed

10 files changed

+1198
-1411
lines changed

Lib/test/test_generated_cases.py

Lines changed: 209 additions & 7 deletions
Large diffs are not rendered by default.

Python/bytecodes.c

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1100,7 +1100,7 @@ dummy_func(
11001100
if (err) {
11011101
assert(oparg == 0);
11021102
monitor_reraise(tstate, frame, this_instr);
1103-
JUMP_TO_LABEL(exception_unwind);
1103+
goto exception_unwind;
11041104
}
11051105
ERROR_IF(true, error);
11061106
}
@@ -1366,7 +1366,7 @@ dummy_func(
13661366
assert(exc && PyExceptionInstance_Check(exc));
13671367
_PyErr_SetRaisedException(tstate, exc);
13681368
monitor_reraise(tstate, frame, this_instr);
1369-
JUMP_TO_LABEL(exception_unwind);
1369+
goto exception_unwind;
13701370
}
13711371

13721372
tier1 inst(END_ASYNC_FOR, (awaitable_st, exc_st -- )) {
@@ -1381,7 +1381,7 @@ dummy_func(
13811381
Py_INCREF(exc);
13821382
_PyErr_SetRaisedException(tstate, exc);
13831383
monitor_reraise(tstate, frame, this_instr);
1384-
JUMP_TO_LABEL(exception_unwind);
1384+
goto exception_unwind;
13851385
}
13861386
}
13871387

@@ -1401,7 +1401,7 @@ dummy_func(
14011401
else {
14021402
_PyErr_SetRaisedException(tstate, Py_NewRef(exc_value));
14031403
monitor_reraise(tstate, frame, this_instr);
1404-
JUMP_TO_LABEL(exception_unwind);
1404+
goto exception_unwind;
14051405
}
14061406
}
14071407

@@ -4849,7 +4849,7 @@ dummy_func(
48494849
tstate, frame, this_instr, prev_instr);
48504850
if (original_opcode < 0) {
48514851
next_instr = this_instr+1;
4852-
JUMP_TO_LABEL(error);
4852+
goto error;
48534853
}
48544854
next_instr = frame->instr_ptr;
48554855
if (next_instr != this_instr) {
@@ -5214,22 +5214,22 @@ dummy_func(
52145214

52155215
label(pop_4_error) {
52165216
STACK_SHRINK(4);
5217-
JUMP_TO_LABEL(error);
5217+
goto error;
52185218
}
52195219

52205220
label(pop_3_error) {
52215221
STACK_SHRINK(3);
5222-
JUMP_TO_LABEL(error);
5222+
goto error;
52235223
}
52245224

52255225
label(pop_2_error) {
52265226
STACK_SHRINK(2);
5227-
JUMP_TO_LABEL(error);
5227+
goto error;
52285228
}
52295229

52305230
label(pop_1_error) {
52315231
STACK_SHRINK(1);
5232-
JUMP_TO_LABEL(error);
5232+
goto error;
52335233
}
52345234

52355235
label(error) {
@@ -5252,7 +5252,7 @@ dummy_func(
52525252
}
52535253
}
52545254
_PyEval_MonitorRaise(tstate, frame, next_instr-1);
5255-
JUMP_TO_LABEL(exception_unwind);
5255+
goto exception_unwind;
52565256
}
52575257

52585258
spilled label(exception_unwind) {
@@ -5270,7 +5270,7 @@ dummy_func(
52705270
PyStackRef_XCLOSE(ref);
52715271
}
52725272
monitor_unwind(tstate, frame, next_instr-1);
5273-
JUMP_TO_LABEL(exit_unwind);
5273+
goto exit_unwind;
52745274
}
52755275
assert(STACK_LEVEL() >= level);
52765276
_PyStackRef *new_top = _PyFrame_Stackbase(frame) + level;
@@ -5283,7 +5283,7 @@ dummy_func(
52835283
int frame_lasti = _PyInterpreterFrame_LASTI(frame);
52845284
PyObject *lasti = PyLong_FromLong(frame_lasti);
52855285
if (lasti == NULL) {
5286-
JUMP_TO_LABEL(exception_unwind);
5286+
goto exception_unwind;
52875287
}
52885288
_PyFrame_StackPush(frame, PyStackRef_FromPyObjectSteal(lasti));
52895289
}
@@ -5298,7 +5298,7 @@ dummy_func(
52985298

52995299
int err = monitor_handled(tstate, frame, next_instr, exc);
53005300
if (err < 0) {
5301-
JUMP_TO_LABEL(exception_unwind);
5301+
goto exception_unwind;
53025302
}
53035303
/* Resume normal execution */
53045304
#ifdef LLTRACE
@@ -5330,13 +5330,13 @@ dummy_func(
53305330
}
53315331
next_instr = frame->instr_ptr;
53325332
RELOAD_STACK();
5333-
JUMP_TO_LABEL(error);
5333+
goto error;
53345334
}
53355335

53365336
spilled label(start_frame) {
53375337
int too_deep = _Py_EnterRecursivePy(tstate);
53385338
if (too_deep) {
5339-
JUMP_TO_LABEL(exit_unwind);
5339+
goto exit_unwind;
53405340
}
53415341
next_instr = frame->instr_ptr;
53425342

@@ -5345,7 +5345,7 @@ dummy_func(
53455345
int lltrace = maybe_lltrace_resume_frame(frame, GLOBALS());
53465346
frame->lltrace = lltrace;
53475347
if (lltrace < 0) {
5348-
JUMP_TO_LABEL(exit_unwind);
5348+
goto exit_unwind;
53495349
}
53505350
}
53515351
#endif

Python/ceval.c

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -769,6 +769,7 @@ _PyObjectArray_Free(PyObject **array, PyObject **scratch)
769769

770770

771771
#ifdef Py_TAIL_CALL_INTERP
772+
#include "opcode_targets.h"
772773
#include "generated_cases.c.h"
773774
#endif
774775

0 commit comments

Comments
 (0)