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

Anthony Ramine <>
Mon Oct 14 12:45:38 CEST 2013


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 <> 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