[squeak-dev] Squeak5.3 linux ARMv6 segfaults on startup

tim Rowledge tim at rowledge.org
Mon Mar 16 17:40:48 UTC 2020


Thanks for banging on the bisect thing Bruce. I gave up yesterday when cloning the repository to my Pi was running. Well, crawling, at the time.

> On 2020-03-16, at 9:33 AM, Levente Uzonyi <leves at caesar.elte.hu> wrote:
>> 
>>>   Fix old bug in ARM32 LoadEffectiveAddressMwrR

Looking back at a last November version of cogitARMv5.c and the implementation/translation of LoadEffectiveAddressMwrR I see that there seems now to be a missing calculation of the immediate5 and rot5 in 

5259: /* begin machineCodeAt:put: */
aWord42 = addrnimmror(self_in_dispatchConcretize, destReg1, srcReg9, immediate5, rot5);

by comparison in the (working) older file it is 

5158: 	rot4 = 32 - i4;
		immediate4 = (((usqInt) offset27) >> i4) | ((offset27 << (32 - i4)) & 0xFFFFFFFFU);
		/* begin machineCodeAt:put: */
		aWord37 = addrnimmror(self_in_dispatchConcretize, destReg1, srcReg7, immediate4, ((sqInt)((usqInt)(rot4) << 1)));

A bit of scanning shows immediate5 is never set, which rarely works out well...

tim
--
tim Rowledge; tim at rowledge.org; http://www.rowledge.org/tim
Useful Latin Phrases:- Vacca foeda = Stupid cow




More information about the Squeak-dev mailing list