harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Archie Cobbs <arc...@dellroad.org>
Subject Re: compiling JCHEVM with GCC/Cygwin
Date Thu, 16 Feb 2006 17:46:58 GMT
snowdosker wrote:
> vm.c - line 46
> message = "assertion failure: _JC_FULL_ALIGNMENT <= (sizeof(_jc_word))"

This assertion is there because we align the start of an object
with the first reference (which is in front of the object header).

The fix for this is to modify the code to align non-array objects
on 8 byte boundaries even if they have an odd number of reference words
(yuck). This requires changing the algorithm for determining object
size and heap block size, as well as "skip word" handling, etc.
(blah blah gnarly internals).

However, I'm curious why double alignment is 8 under Cygwin but
only 4 under Linux but both are x86. Obviously that can't derive
only from the hardware.

So for now I'd say just comment out that assertion and proceed.
If you get funny floating point results then we'll know why :-)


Archie Cobbs      *        CTO, Awarix        *      http://www.awarix.com

View raw message