[erlang-questions] Internal error in v3_codegen on Linux at Sparc

Mikael Pettersson <>
Fri Feb 22 13:34:33 CET 2008


Sergei Golovan writes:
 > Hi!
 > 
 > Building of Erlang/OTP R12B-1 on Debian Linux at Sparc architecture
 > (Dual-core UltraSPARC III machine) gave the following error:
 > 
 > erlc -W  +debug_info -I/build/buildd/erlang-12.b.1-dfsg/lib/stdlib
 > +warn_unused_vars -o../ebin asn1rt_ber_bin_v2.erl
 > Function: encode_tags/2
 > ./asn1rt_ber_bin_v2.erl:none: internal error in v3_codegen;
 > crash reason: {{case_clause,
 >                 {'EXIT',
 >                  {{case_clause,
 >                    {{{l,
 >                       {block,
 >                        [{l,{match_fail,{badmatch,{var,ker46}}},44,[],[]}]},
 >                       43,
 >                       [{ker46,40,44}],
 >                       []},
 >                      {ker46,40,42}},
 >                     {{sr,[{0,cor1},{1,cor0}],[],[]},0}}},
 >                   [{v3_codegen,'-select_extract_tuple/6-anonymous-0-',5},
 >                    {v3_codegen,select_extract_tuple,6},
 >                    {v3_codegen,select_val,5},
 >                    {v3_codegen,'-select_cg/6-anonymous-0-',5},
 >                    {lists,mapfoldl,3},
 >                    {v3_codegen,select_cg,6},
 >                    {v3_codegen,match_cg,5},
 >                    {v3_codegen,match_cg,6}]}}},
 >                [{compile,'-select_passes/2-anonymous-2-',2},
 >                 {compile,'-internal_comp/4-anonymous-1-',2},
 >                 {compile,fold_comp,3},
 >                 {compile,internal_comp,4},
 >                 {compile,internal,3}]}
 > 
 > (full build log is available at
 > http://buildd.debian.org/fetch.cgi?&pkg=erlang&ver=1%3A12.b.1-dfsg-2&arch=sparc&stamp=1203250875&file=log)
 > 
 > Is this a bug in compiler, or may be the error reflects some deeper
 > problem (in Erlang VM, or even in Linux kernel)? Building the same
 > sources several days ago ended up with a segfault during the same
 > asn1rt_ber_bin_v2.erl compiling).

I can't reproduce this problem on either a USII running Aurora Linux with
gcc-4.2.3 + kernel 2.6.25-rc2, or a dual USIIIi running Solaris 9 with gcc-4.2.3.

Thus it may be a generic USIII problem in the Linux kernel, or it may be
a problem with one of the many patches Debian applies to the kernel, the
gcc used to compile the kernel, the regular gcc (which may or may not be
the one used to compiler the kernel), glibc, and finally Erlang/OTP (yes
I noticed you patched Erlang too).



More information about the erlang-questions mailing list