From mboxrd@z Thu Jan 1 00:00:00 1970 From: erik quanstrom Date: Sat, 25 May 2013 08:53:35 -0400 To: 9fans@9fans.net Message-ID: In-Reply-To: <1254af8db321f876dc44170675d6df34@proxima.alt.za> References: <1254af8db321f876dc44170675d6df34@proxima.alt.za> MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Subject: Re: [9fans] Plan 9 Go 386 Topicbox-Message-UUID: 5bcae400-ead8-11e9-9d60-3106f5b1d025 On Sat May 25 01:50:51 EDT 2013, lucio@proxima.alt.za wrote: > I've seen this before, although by now I've seen so many errors crop > up that I can't recall them all. >=20 > >> =3D=3D=3D RUN TestErrors-2 > >> template.test 289408: suicide: sys: floating point in note handler p= c=3D0x0001e9c7 > >> exit status: 'template.test 289408: sys: floating point in note > >> handler pc=3D0x0001e9c7' > >> FAIL html/template 0.213s > >=20 > > acid: stk() > > runtime.memmove(to=3D0x106dd000,fr=3D0x30887660,n=3D0x2c)+0x107 > > /usr/glenda/src/go/src/pkg/runtime/memmove_386.s:145 > > runtime.sighandler(s=3D0x30887660,v=3D0x308876e4,gp=3D0x106d31b0)+0x1= 26 > > /usr/glenda/src/go/src/pkg/runtime/os_plan9_386.c:67 > > runtime.sigtramp(ureg=3D0x30887660,note=3D0x106d31b0)+0x44 > > /usr/glenda/src/go/src/pkg/runtime/sys_plan9_386.s:161 > > 0x308876e4 ?file?:0 > > acid: >=20 > I am surprised, but also relieved that we have a resproducible mistake > outside the run.rc scope. We can focus on that. this is not surprising. the backtrace and error seem to tell us everythi= ng we need to know. go appears doing floating point in a note handler, which is not legal in plan 9. checking the code quickly from here http://code.google.com/p/go/source/browse/src/pkg/runtime/memmove_386.s we have 144 move_33through64: 145 MOVOU (SI), X0 which is indeed floating point in memmove. a quick fix would be to comment out line 47 and make line 48 an unconditional jump. 47 // TESTL $0x4000000, runtime=C2=B7cpuid_edx(SB) // check for sse2 48 JMP nosse2 // JEQ nosse2 - erik