On Thu, 22 Oct 2015 at 09:37 Stéphane Wirtel <steph...@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.
_______________________________________________ Python-Dev mailing list Python-Dev@python.org https://mail.python.org/mailman/listinfo/python-dev Unsubscribe: https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com