megamorphic lambda prevention

Jochen Theodorou blackdrag at gmx.org
Thu Jun 21 07:12:23 PDT 2012


Am 21.06.2012 16:00, schrieb Rémi Forax:
> On 06/21/2012 03:52 PM, Jochen Theodorou wrote:
>> Am 21.06.2012 13:57, schrieb Krystal Mok:
[...]
>>> I wonder how well the new interpreter design in Graal would handle this
>>> kind of case, since it's supposed to have picked the good parts from
>>> trace-based compilation, but without actually having to do tracing.
>>> Can't wait to see more details of it at this year's JVM Language Summit.
>> If I understood Thomas right, then Graal doesn't have that problem.
>> Afaik hotspot doesn't have to have that problem too. It just was a
>> design decision not to make call site caching per execution path. Afaik
>> chaning that now would take quite some effort, but is not impossible.
>
> You can create the execution path backward, when it's needed.

you can in PHP.reboot, but in Groovy I don't have access to the full 
execution path. Inside "each" I don't know what did call me and at the 
point of where I call each, I don't see what each will actually do.

bye blackdrag

-- 
Jochen "blackdrag" Theodorou - Groovy Project Tech Lead
blog: http://blackdragsview.blogspot.com/
german groovy discussion newsgroup: de.comp.lang.misc
For Groovy programming sources visit http://groovy-lang.org



More information about the mlvm-dev mailing list