Message382834
During optimization, the compiler deletes blocks that are marked as unreachable. In doing so, it can render jump instructions that used to jump over the now-deleted blocks redundant, since simply falling through to the next non-empty block is now equivalent.
An example of a place where this occurs is around "if condition: statement; else: break" style structures (see attached proof of concept code below), but this is a general case and could occur in other places.
Tested on the latest 3.10 branch including all recent compile.c changes. |
|
Date |
User |
Action |
Args |
2020-12-10 16:47:13 | OmG | set | recipients:
+ OmG |
2020-12-10 16:47:13 | OmG | set | messageid: <1607618833.17.0.897209602583.issue42615@roundup.psfhosted.org> |
2020-12-10 16:47:13 | OmG | link | issue42615 messages |
2020-12-10 16:47:12 | OmG | create | |
|