[Vm-dev] latest vm 64bits crashes my image
eliot.miranda at gmail.com
Mon Jan 9 19:52:41 UTC 2017
On Mon, Jan 9, 2017 at 11:26 AM, Eliot Miranda <eliot.miranda at gmail.com>
> Hi All, Hi Nicolas, Hi Esteban,
> ok, I see the problem. It's a Slang bug. With current Slang and
> current sources, turning off the remembered bit clears half the header word
> on 64-bits. i.e. setIsRememberedOf: referrer to: false translates to
> longAtput(referrer, (longAt(referrer)) & (~(1U <<
> longAtput(referrer, (longAt(referrer)) & (~(1UL <<
> and 1U is an int. No doubt this affects plenty of places in the VM, but
> for now the first symptom I see is the above, when remembered objects are
> scavenged and their remembered bit gets cleared. I think the simple fix is
> that numeric constants should always be 1UL, or 1L, never 1U or 1, but I
> need to check the 32-bit sources too.
And always casting integer constants to at least long would be wrong
because Win64 is LLP64. In fact the bug is
in generateBitInvert:on:indent:, which for bitnvert64, now that we handle
LLP64, needs to cast integer expressions to usqIntptr_t in 64-bits and to
unsigned long long in 32 bits.
Anyway, we should be able to fix this soon, certainly before tomorrow a.m.
Normal service should be restored shortly ;-)
[sschurley broken /is/ normal service, hic! ed.]
> On Mon, Jan 9, 2017 at 5:02 AM, Esteban Lorenzano <estebanlm at gmail.com>
>> (sent again with dump zipped)
>> I just built a new VM for 64bits with latest sources and is crashing in
>> mac :(
>> Latest version I tested (and it was working) was based on
>> VMMaker.oscog-nice.1991 and is from november 2016.
>> I’m adding the dump…
>> any idea?
> best, Eliot
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Vm-dev