tech-pkg archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: Softfloat on i386
On Thu, 1 Jan 2026 at 00:44, David Holland <dholland-pkgtech%netbsd.org@localhost> wrote:
>
> On Wed, Dec 31, 2025 at 07:15:48PM -0500, Greg Troxel wrote:
> > > The problem is that go is a compiler and it apparently only supports
> > > codegen for either (a) sse2 and newer or (b) softfloat. This means
> > > there's a range of non-486SX (and non-486) machines where the only
> > > working option is softfloat.
> >
> > I'd call that a bug in go.
>
> So would I, but it's also a reasonable support choice if you don't
> have a retrocomputing or otherwise niche audience. x86 cpus without
> sse2 are, mostly, more than 20 years old now.
>
> Obviously, anyone who wants to get involved with this particular
> windmill is welcome to try to implement older x86 FPU support and try
> to get it merged upstream :-)
An easier option for universal binaries might be to look at adding an
option to go to build with both SSE & softfloat, and make it
selectable at runtime.
From a quick check on go125, "#ifdef GO386_softfloat" is mentioned 8
times, 7 of which are in .s files, so it could be an interesting
project for someone interested in x86 assembly :)
It looks like go included x87 FPU support in at least 1.4, but dropped
it by 1.18, so someone *could* potentially try to port it forward, but
I think the run-time selection would be a better project...
There is still the valid question as to what pkgsrc should support for
NetBSD/i386.
I'd suggested that if we're only producing one set of binaries it
should support the same set of CPUs as the NetBSD distribution - so
486.
Though...if someone is interested in running some benchmarks on an
SSE2 supporting CPU to determine how much benefit could be gained by
compiling with something like "-msse2 -march=pentium4" that would help
determine whether it is even worth providing a second set of
binaries...
David
Home |
Main Index |
Thread Index |
Old Index