From mboxrd@z Thu Jan 1 00:00:00 1970 To: 9fans@9fans.net Subject: Re: [9fans] signal.h in APE for newbies From: "Russ Cox" Date: Fri, 4 Jul 2008 15:22:13 -0400 In-Reply-To: <74e6c91c9b771978f68b4f7430ae3cc2@terzarima.net> MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit Message-Id: <20080704192009.3F69C1E8C7F@holo.morphisms.net> Topicbox-Message-UUID: dbb457be-ead3-11e9-9d60-3106f5b1d025 > vx32 converts SIGFPE to the SIMD SSE/SSE2 trap 19, but > 9vx expects only x87. Ah. So that explains where the 19 came from. I had wondered how I got that wrong. ;-) Vx32 originally disallowed the x87 so that the VM execution would be more deterministic, but it was easier to turn on x87 support than change 8c. > i had wondered the other day whether there were AMD/Intel processors > in common use that supported x87 but not SSE/SSE2. should 8c start > using SSE as the plan 9 amd64 compiler does? could it support that exclusively? I have pushed hard to keep post-386 dependencies from creeping into the system. That's why, for example, libthread uses locked INCL and DECL instructions instead of the commented-out XADDL implementation that would only work on the 486 and later. I harbor no illusion that we've succeeded entirely, but I do hope that if someone dug up a 386, it would not be too much work to get it to boot and run. Just the other day Sape and I were discussing whether some code he was working on should add a dependency on CMPXCHG8B (64-bit compare and swap), which was only introduced in the Pentium. I think we decided there is a way to avoid it in favor of the 386-supported 32-bit XCHG. The SSE instructions were only added in the Pentium III; SSE2 only came in with the Pentium 4. I realize that, at this point, keeping 386 support is bordering on retrocomputing, but it's hard to know where to draw the line. I would be inclined to leave the 386 support as it is and assume that people who want to take advantage of new features will switch to the x86-64 once the port is available. But I might just be out of touch. Russ