Antoine Pitrou <pit...@free.fr> added the comment:

Le 04/12/2017 à 13:25, Serhiy Storchaka a écrit :
> 
> I started on Antoine's PR and work on different approach 
> (https://github.com/serhiy-storchaka/cpython/pull/1) which don't duplicate 
> the code for continue/break/return. Instead it uses some kind of subroutines. 
> END_FINALLY expects the one of three cases:
> 
> 1. NULL (or None). Normal execution thread in try/finally. Continue from the 
> instruction following END_FINALLY.
> 
> 2. An integer. This is an address of returning. Continue from the specified 
> address.
> 
> 3. An exception (6 items). Raises the specified exception.

The problem is that makes the stack consumption of END_FINALLY variable.
How about always consuming 6 items, even when most of them are unused
padding?

----------

_______________________________________
Python tracker <rep...@bugs.python.org>
<https://bugs.python.org/issue17611>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to