diff --git a/Misc/NEWS.d/next/Core and Builtins/2022-02-01-14-30-56.bpo-45773.Up77LD.rst b/Misc/NEWS.d/next/Core and Builtins/2022-02-01-14-30-56.bpo-45773.Up77LD.rst new file mode 100644 index 00000000000..45da5116fc9 --- /dev/null +++ b/Misc/NEWS.d/next/Core and Builtins/2022-02-01-14-30-56.bpo-45773.Up77LD.rst @@ -0,0 +1 @@ +Remove two invalid "peephole" optimizations from the bytecode compiler. diff --git a/Python/compile.c b/Python/compile.c index 1d2d567e85e..cecd6a5c426 100644 --- a/Python/compile.c +++ b/Python/compile.c @@ -8757,7 +8757,6 @@ optimize_basic_block(struct compiler *c, basicblock *bb, PyObject *consts) switch (target->i_opcode) { case JUMP_ABSOLUTE: case JUMP_FORWARD: - case JUMP_IF_FALSE_OR_POP: i -= jump_thread(inst, target, POP_JUMP_IF_FALSE); } break; @@ -8765,7 +8764,6 @@ optimize_basic_block(struct compiler *c, basicblock *bb, PyObject *consts) switch (target->i_opcode) { case JUMP_ABSOLUTE: case JUMP_FORWARD: - case JUMP_IF_TRUE_OR_POP: i -= jump_thread(inst, target, POP_JUMP_IF_TRUE); } break;