Commit eadad1b9 authored by INADA Naoki's avatar INADA Naoki Committed by GitHub

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 (7ea143ae).
So this commit removes them from peephole optimizer.
parent 374c6e17
...@@ -345,21 +345,6 @@ PyCode_Optimize(PyObject *code, PyObject* consts, PyObject *names, ...@@ -345,21 +345,6 @@ PyCode_Optimize(PyObject *code, PyObject* consts, PyObject *names,
in_consts = 0; in_consts = 0;
switch (opcode) { 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 /* Skip over LOAD_CONST trueconst
POP_JUMP_IF_FALSE xx. This improves POP_JUMP_IF_FALSE xx. This improves
"while 1" performance. */ "while 1" performance. */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment