Skip to content

Commit

Permalink
bpo-37289: Remove 'if False' handling in the peephole optimizer (pyth…
Browse files Browse the repository at this point in the history
…onGH-14099) (pythonGH-14112)

(cherry picked from commit 7a68f8c)

Co-authored-by: Pablo Galindo <Pablogsal@gmail.com>
  • Loading branch information
miss-islington and pablogsal committed Jun 15, 2019
1 parent 687af44 commit 284daea
Showing 1 changed file with 3 additions and 9 deletions.
12 changes: 3 additions & 9 deletions Python/peephole.c
Original file line number Diff line number Diff line change
Expand Up @@ -311,18 +311,12 @@ PyCode_Optimize(PyObject *code, PyObject* consts, PyObject *names,
}
PyObject* cnt = PyList_GET_ITEM(consts, get_arg(codestr, i));
int is_true = PyObject_IsTrue(cnt);
if (is_true == -1) {
goto exitError;
}
if (is_true == 1) {
fill_nops(codestr, op_start, nexti + 1);
cumlc = 0;
} else if (is_true == 0) {
if (i > 1 &&
(_Py_OPCODE(codestr[i - 1]) == POP_JUMP_IF_TRUE ||
_Py_OPCODE(codestr[i - 1]) == POP_JUMP_IF_FALSE)) {
break;
}
h = get_arg(codestr, nexti) / sizeof(_Py_CODEUNIT);
tgt = find_op(codestr, codelen, h);
fill_nops(codestr, op_start, tgt);
}
break;

Expand Down

0 comments on commit 284daea

Please sign in to comment.