From: INADA Naoki Date: Thu, 14 Dec 2017 13:18:26 +0000 (+0900) Subject: bpo-29469: Remove unnecessary peephole optimizer (GH-4863) X-Git-Tag: v3.7.0a4~141 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=eadad1b97f64619bfd246b9d3b60d25f456e0592;p=python bpo-29469: Remove unnecessary peephole optimizer (GH-4863) Conversions like `not a is b -> a is not b` are implemented in AST optimizer in previous commit (7ea143a). So this commit removes them from peephole optimizer. --- diff --git a/Python/peephole.c b/Python/peephole.c index 3c5290fadc..5817146563 100644 --- a/Python/peephole.c +++ b/Python/peephole.c @@ -345,21 +345,6 @@ PyCode_Optimize(PyObject *code, PyObject* consts, PyObject *names, in_consts = 0; switch (opcode) { - /* not a is b --> a is not b - not a in b --> a not in b - not a is not b --> a is b - not a not in b --> a in b - */ - case COMPARE_OP: - j = get_arg(codestr, i); - if (j < 6 || j > 9 || - nextop != UNARY_NOT || - !ISBASICBLOCK(blocks, op_start, i + 1)) - break; - codestr[i] = PACKOPARG(opcode, j^1); - fill_nops(codestr, i + 1, nexti + 1); - break; - /* Skip over LOAD_CONST trueconst POP_JUMP_IF_FALSE xx. This improves "while 1" performance. */