| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -0,0 +1,2 @@ | |||
| 1 | + Reload ``opcode`` when raising ``unknown opcode error`` in the interpreter main loop, | ||
| 2 | + for C compilers to generate dispatching code independently. | ||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -5661,6 +5661,9 @@ _PyEval_EvalFrameDefault(PyThreadState *tstate, _PyInterpreterFrame *frame, int | |||
| 5661 | 5661 | #else | |
| 5662 | 5662 | EXTRA_CASES // From opcode.h, a 'case' for each unused opcode | |
| 5663 | 5663 | #endif | |
| 5664 | + /* Tell C compilers not to hold the opcode variable in the loop. | ||
| 5665 | + next_instr points the current instruction without TARGET(). */ | ||
| 5666 | + opcode = _Py_OPCODE(*next_instr); | ||
| 5664 | 5667 | fprintf(stderr, "XXX lineno: %d, opcode: %d\n", | |
| 5665 | 5668 | _PyInterpreterFrame_GetLine(frame), opcode); | |
| 5666 | 5669 | _PyErr_SetString(tstate, PyExc_SystemError, "unknown opcode"); | |
| Back | FazBrowse Home | New Git URL |
0 commit comments