[erlang-patches] Optimize handling of local fun variables in v3_kernel

Anthony Ramine n.oxyde@REDACTED
Sun Jan 26 16:10:38 CET 2014


Kostis, ping?

-- 
Anthony Ramine

Le 14 oct. 2013 à 13:07, Anthony Ramine <n.oxyde@REDACTED> a écrit :

> Err,
> 
> t2() -> fun identity/1.
> 
> -- 
> Anthony Ramine
> 
>> Le 14 oct. 2013 à 12:45, Anthony Ramine <n.oxyde@REDACTED> a écrit :
>> 
>> Hello Kostis,
>> 
>> To reproduce the crash, compile the following module with +native with my rm-reverse-eta-conversion branch:
>> 
>> -module(t).
>> -export([t1/0,t2/0]).
>> 
>> t1() -> fun identity/1.
>> t2() -> fun identity/2.
>> 
>> identity(X) -> X.
>> 
>> Loading this module compiled with HiPE on my branch will make HiPE crash in patch_funentries. Commenting the t2/0 function out makes the crash disappear. That shows that the cause of the crash is multiple references to the same local function.
>> 
>> Regards,
>> 
>> -- 
>> Anthony Ramine
>> 
>>> Le 8 oct. 2013 à 20:12, Kostis Sagonas <kostis@REDACTED> a écrit :
>>> 
>>> Anyway, I am not sure how to contribute here and it will take me quite some time to investigate this from scratch, time which sadly I do not have these days.  I can spend some time on this if I feel like hacking again one of the nights to come, but only if you minimize this and send me a self-contained module that shows the problem when you generate BEAM code with the changed compiler, but not with the vanilla.
>> 




More information about the erlang-patches mailing list