Two bad things could have happened:

1) OSR entry failed.  That's rare.  You could try to put some logging in 
prepareOSREntry.

2) The GC decided that it didn't want to keep your code around anymore.  We 
have heuristics for doing this even if your code doesn't OSR exit, and even 
when the owning function is still live.  The reason is that the generated 
machine code may have pointers to the heap.  If those objects are not otherwise 
live, the GC has to either make them live (which could increase footprint) or 
kill the DFG code block.  It will often do the latter.

As Maciej suggests, a bug report would be great.  We are always interested in 
looking at programs where our heuristics fail.

-F


On Oct 12, 2012, at 6:26 PM, Blake Fiddler <blake.fidd...@gmail.com> wrote:

> Hi.
> I have some example in which my function recompiling in dfg jit (it's parsing 
> in second time without OSR exits).
> Can you explain me why that happens and in which cases? 
> 
> Regards, Blake.

_______________________________________________
webkit-dev mailing list
webkit-dev@lists.webkit.org
http://lists.webkit.org/mailman/listinfo/webkit-dev

Reply via email to