[erlang-questions] Hipe and memory alignment (Yikes! erts_alloc() returned misaligned address)

Kenji Rikitake <>
Thu Aug 5 09:37:51 CEST 2010


I also often see mostly the same message which only the address value is
different on FreeBSD i386 7.3-RELEASE, with the stock gcc
(gcc (GCC) 4.2.1 20070719  [FreeBSD])

Regards,
Kenji Rikitake

In the message <>
dated Wed, Aug 04, 2010 at 06:59:11PM +0200,
Paul Guyot <> writes:
> Hello,
> 
> When running erl with native (hipe) code on some platforms (FreeBSD amd64), one quickly encounters messages such as:
> 
> Yikes! erts_alloc() returned misaligned address 0x8016a512c
> 
> This message seems to come from hipe_bifs:alloc_data/2. The allocator is the system allocator, which on unix platform is malloc, and malloc does not necessarily return aligned blocks (on MacOS X, it does, but not on FreeBSD).
> 
> Does it really matter? (hipe_bifs:alloc_data/2 is only called from hipe_unified_loader:create_data_segment/3).
> If it doesn't, can we remove the log line?
> If it does, can we replace the allocator with another one that always return aligned blocks?
> 
> Paul
> -- 
> Semiocast                    http://semiocast.com/
> +33.175000290 - 62 bis rue Gay-Lussac, 75005 Paris
> 
> 
> ________________________________________________________________
> erlang-questions (at) erlang.org mailing list.
> See http://www.erlang.org/faq.html
> To unsubscribe; mailto:


More information about the erlang-questions mailing list