summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Misc/NEWS.d/next/Core and Builtins/2022-02-01-14-30-56.bpo-45773.Up77LD.rst1
-rw-r--r--Python/compile.c2
2 files changed, 1 insertions, 2 deletions
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 0000000..45da511
--- /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 1d2d567..cecd6a5 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;