[pypy-dev] Virtualizable Frames getting half removed in trace

Armin Rigo arigo at tunes.org
Tue Feb 25 10:56:26 CET 2014


Hi Maciej,

On 25 February 2014 09:09, Maciej Fijalkowski <fijall at gmail.com> wrote:
> ugh that looks really odd, why is p67 not removed escapes my attention

Because we do setarrayitem and getarrayitem on non-constant indexes.

> On Tue, Feb 25, 2014 at 6:36 AM, Timothy Baldridge <tbaldridge at gmail.com> wrote:
>> I'm attaching a copy of my latest trace. The part I'm not happy with is at
>> the end of the trace:

We need tricks to avoid allocating the frame when we *leave* the
function.  In PyPy it can only be done if we know for sure that nobody
can potentially grab a reference to the frame for later (e.g. via
exceptions).  I'm unsure to remember the latest version of this logic,
but there were several ones...


A bientôt,

Armin.


More information about the pypy-dev mailing list