diff options
| author | Serhiy Storchaka <storchaka@gmail.com> | 2016-10-25 09:30:43 +0300 |
|---|---|---|
| committer | Serhiy Storchaka <storchaka@gmail.com> | 2016-10-25 09:30:43 +0300 |
| commit | 7db3c488335168993689ddae5914a28e16188447 (patch) | |
| tree | d6961b3d600c2e3ca8969968f7fd3d1dd03e3f36 /Python/peephole.c | |
| parent | 802883a386b30e4fdfd93dfef0dafa723fbeee15 (diff) | |
| download | cpython-git-7db3c488335168993689ddae5914a28e16188447.tar.gz | |
Issue #28517: Fixed of-by-one error in the peephole optimizer that caused
keeping unreachable code.
Diffstat (limited to 'Python/peephole.c')
| -rw-r--r-- | Python/peephole.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/Python/peephole.c b/Python/peephole.c index 84eb2dbefd..dd8f3e4807 100644 --- a/Python/peephole.c +++ b/Python/peephole.c @@ -704,11 +704,11 @@ PyCode_Optimize(PyObject *code, PyObject* consts, PyObject *names, /* Remove unreachable ops after RETURN */ case RETURN_VALUE: h = i + 1; - while (h + 1 < codelen && ISBASICBLOCK(blocks, i, h + 1)) { + while (h < codelen && ISBASICBLOCK(blocks, i, h)) { h++; } if (h > i + 1) { - fill_nops(codestr, i + 1, h + 1); + fill_nops(codestr, i + 1, h); nexti = find_op(codestr, h); } break; |
