[Python-Dev] Generated Bytecode ...
Brett Cannon
brett at python.org
Thu Oct 22 13:02:48 EDT 2015
On Thu, 22 Oct 2015 at 09:37 Stéphane Wirtel <stephane at wirtel.be> wrote:
> Hi all,
>
> When we compile a python script
>
> # test.py
> if 0:
> x = 1
>
> python -mdis test.py
>
> There is no byte code for the condition.
>
> So my question is, the byte code generator removes the unused functions,
> variables etc…, is it right?
>
Technically the peepholer removes the dead branch, but since the peepholer
is run on all bytecode you can't avoid it.
>
> What are the cases where the generator does not generate the byte codes ?
>
It's not specified anywhere; it's just what the peepholer decides to
remove. The exact code can be found at
https://hg.python.org/cpython/file/default/Python/peephole.c . There has
been talk in the past for adding a -X flag to disable the peepholer, but it
never went any farther beyond that.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-dev/attachments/20151022/763e686f/attachment-0001.html>
More information about the Python-Dev
mailing list