<div><br></div><div>Hi,<br></div><div><br></div><div>Ok.  My build which doesn't do anything special shows this:<br></div><div><br></div><p style="margin: 0px; font-style: normal; font-variant-caps: normal; font-weight: normal; font-stretch: normal; line-height: normal;"><span class="colour" style="color:rgb(0, 0, 0)"><span class="font" style="font-family:Menlo"><span class="size" style="font-size:11px"><span style="font-variant-ligatures: no-common-ligatures">squeak: ELF 32-bit LSB executable, ARM, EABI5 version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-armhf.so.3, for GNU/Linux 3.2.0, BuildID[sha1]=42e5a7da9312a9fbc187ff9f1390d4637b21ddf8, not stripped</span></span></span></span><br></p><div id="editorUserSignature" style="display:none;"><br></div><div><br></div><div>I was more worried about testing, ie, if I build it on a PI3+ I wouldn't be confident that it ran on earlier ones without testing.<br></div><div><br></div><div>cheers<br></div><div><br></div><div>bruce</div><div><br></div><div><i>11 March 2020 21:54 tim Rowledge <tim@rowledge.org> wrote:</i><br></div><blockquote class="infmailquote"><div>If one has any Pi model it is best to use the default flags wrt architecture when compiling C; that way it will run on any Pi from the original (I still have a working example!) to a Pi 4 (when running the default Raspbian 32bit release). When the ARMv8/AARCH64 VM is released we will have a quite different set of issues to enjoy fixing.<br></div><div> <br></div><div> > On 2020-03-11, at 11:48 AM, Bruce O'Neel wrote:<br></div><div> ><br></div><div> ><br></div><div> > I'm willing to do PI builds but for ARMv7 not v6.<br></div><div> ><br></div><div> > cheers<br></div><div> ><br></div><div> > bruce<br></div><div> ><br></div><div> ><br></div><div> > 11 March 2020 19:20 tim Rowledge wrote:<br></div><div> > Are we not able to connect up a Pi to be used for these auto-builds? Or does it require machines at 'their' location (whoever 'they' is?)<br></div><div> ><br></div><div> > > On 2020-03-11, at 11:08 AM, Nicolas Cellier wrote:<br></div><div> > ><br></div><div> > > My bad, it sounds OK for armV8, not so for v6...<br></div><div> > > https://docs.travis-ci.com/user/multi-cpu-architectures/<br></div><div> > ><br></div><div> > > Le mer. 11 mars 2020 à 11:43, Nicolas Cellier a écrit :<br></div><div> > > I'm not uptodate, it seems that Travis has more to offer:<br></div><div> > > https://blog.travis-ci.com/2019-10-07-multi-cpu-architecture-support<br></div><div> > ><br></div><div> > > Le mer. 11 mars 2020 à 11:38, Nicolas Cellier a écrit :<br></div><div> > > From extracts of the travis log https://travis-ci.org/OpenSmalltalk/opensmalltalk-vm/jobs/657397531, I see that:<br></div><div> > ><br></div><div> > > - we compile with gcc<br></div><div> > > gcc -std=gnu99 -g -O2 -DNDEBUG -DDEBUGVM=0 -DI_REALLY_DONT_CARE_HOW_UNSAFE_THIS_IS -DUSE_MIDI_ALSA -DCOGMTVM=0 -Wall -pthread -DLSB_FIRST=1 -march=armv6 -mfpu=vfp -mfloat-abi=hard -Wno-missing-braces -Wno-unknown-pragmas -Wno-unused-value -Wno-unused-label -Wno-unused-function -Wno-unused-variable -Wno-unused-but-set-variable -DHAVE_CONFIG_H -DSQUEAK_BUILTIN_PLUGIN snip...<br></div><div> > > - it is a rather old version<br></div><div> > > $ gcc --version<br></div><div> > > gcc (Ubuntu 4.8.4-2ubuntu1~14.04.3) 4.8.4<br></div><div> > ><br></div><div> > > - we do not seem to run tests for arm (would require setting up emulation on the CI for example qemu like https://www.tomaz.me/2013/12/02/running-travis-ci-tests-on-arm.html)<br></div><div> > ><br></div><div> > ><br></div><div> > > Le mer. 11 mars 2020 à 08:39, Nicolas Cellier a écrit :<br></div><div> > > Hi,<br></div><div> > > I have simulated the VM (nightly, it's too long),<br></div><div> > ><br></div><div> > > | cos |<br></div><div> > > cos := CogVMSimulator newWithOptions: #(Cogit StackToRegisterMappingCogit<br></div><div> > > ObjectMemory Spur32BitCoMemoryManager<br></div><div> > > ISA ARMv5 ).<br></div><div> > > cos desiredNumStackPages: 8.<br></div><div> > > cos openOn: 'Squeak5.3-19431-32bit.image'.<br></div><div> > > cos openAsMorph; run<br></div><div> > ><br></div><div> > > It starts normally thru simulator (I don't attach the screen snapshot, but it takes more than 2G byteCodes/241k sends to obtain the preference wizard)<br></div><div> > ><br></div><div> > > Could the crash be related to the cross-compiler?<br></div><div> > > Is it gcc or clang currently for ARM builds?<br></div><div> > > On macos, -fsanitize=undefined notices a few unaligned memory access...<br></div><div> > > Could it be a clue?<br></div><div> > ><br></div><div> > ><br></div><div> > > Le lun. 9 mars 2020 à 02:17, tim Rowledge a écrit :<br></div><div> > ><br></div><div> > ><br></div><div> > > > On 2020-03-08, at 12:12 PM, tim Rowledge wrote:<br></div><div> > > ><br></div><div> > > > From the stack etc it looks as if something within SmalltalkImage>setGCParameters (so immediately after the return from snapshot primitive) calls vsprintf() and has a little conniption. Not clear whether the issue is in the vmParameterAt: or the vmParameterAt:put: yet.<br></div><div> > ><br></div><div> > > OK, no particular helpful news from looking at the VM generated code; the vmParameterAt:put: case would seem to be using the code in src/vm/cointerp.c ll: 55603-8 where I see no plausible connection to vsprintf(). Sigh.<br></div><div> > ><br></div><div> > > tim<br></div><div> > > --<br></div><div> > > tim Rowledge; tim@rowledge.org; http://www.rowledge.org/tim<br></div><div> > > Don't document the program; program the document.<br></div><div> > ><br></div><div> > ><br></div><div> > ><br></div><div> > ><br></div><div> ><br></div><div> ><br></div><div> > tim<br></div><div> > --<br></div><div> > tim Rowledge; tim@rowledge.org; http://www.rowledge.org/tim<br></div><div> > Useful random insult:- A one-bit brain with a parity error.<br></div><div> ><br></div><div> ><br></div><div> ><br></div><div> ><br></div><div> ><br></div><div> ><br></div><div> <br></div><div> <br></div><div> tim<br></div><div> --<br></div><div> tim Rowledge; tim@rowledge.org; http://www.rowledge.org/tim<br></div><div> Common sense – so rare it’s a goddam superpower<br></div><div> <br></div><div> <br></div><div> <br></div></blockquote><div><br></div>