Mark Shannon <[email protected]> added the comment:
Are you interested in the "what" or the "how"?
The "what":
PEP 626 defines what CPython must do in terms of tracing lines executed.
The "how":
Obviously, we want to execute Python as efficiently as possible.
To do so, we use a series of "peephole" optimizations that make the bytecode
more efficient but preserve PEP 626 semantics.
The front-end of the compiler produces code that conforms to PEP 626.
The optimizer should make the bytecode faster, while still conforming to PEP
626. Since the optimizer is inherited from 3.9, it doesn't always respect PEP
626. I am in the process of fixing that.
If you need to know what the optimizer does, in order to correctly implement
coverage.py, then that is a bug in the optimizer.
Zero-width entries will, in theory, allow some additional optimizations.
But probably not that much, in practice.
----------
_______________________________________
Python tracker <[email protected]>
<https://bugs.python.org/issue42693>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe:
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com