On Wed, 21 Jul 2021, Stan Johnson wrote: > > > > Here is the output from Debian 11 on M68k (identical with both gcc-9 > > and gcc-10): > > > > k = -16380 x = 0x8.0000000000000000p-16383 = > > 1.344841257244837403e-4931 = 0x0003_80000000_00000000 > > k = -16381 x = 0x8.0000000000000000p-16384 = > > 6.724206286224187013e-4932 = 0x0002_80000000_00000000 > > k = -16382 x = 0x8.0000000000000000p-16385 = > > 3.362103143112093506e-4932 = 0x0001_80000000_00000000 > > > > ---------- begin subnormals ---------- > > > > k = -16383 x = 0x4.0000000000000000p-16386 = > > 8.405257857780233766e-4933 = 0x0000_40000000_00000000 > > k = -16384 x = 0x2.0000000000000000p-16386 = > > 4.202628928890116883e-4933 = 0x0000_20000000_00000000 > > k = -16385 x = 0x1.0000000000000000p-16386 = > > 2.101314464445058441e-4933 = 0x0000_10000000_00000000 > > > > Here's the output of your program from a Mac IIci running Debian SID > (using gcc version 9.2.1): > > ----- > > $ cat /proc/cpuinfo > CPU: 68030 > MMU: 68030 > FPU: 68882
I wonder if that hardware should be expected to give the same result as 68040 hardware (?) Both QEMU and Aranym emulate the latter: CPU: 68040 MMU: 68040 FPU: 68040 Clocking: 211.0MHz BogoMips: 140.69 Calibration: 703488 loops > Clocking: 23.1MHz > BogoMips: 5.78 > Calibration: 28928 loops > > $ cc bug-float80.c > $ ./a.out > Addressing is big-endian > sizeof(long double) = 12 > > LDBL_MANT_DIG = 64 > LDBL_MIN_EXP = -16382 > LDBL_MIN = 0x8.0000000000000000p-16386 = 1.681051571556046753e-4932 > > k = -16381 x = 0xd.eadbeefcafefeed0p-16385 = 5.848974526544159967e-4932 = > 0x0001_deadbeef_cafefeed > k = -16381 x = 0xd.eadbeefcafefeed0p-16385 = 5.848974526544159967e-4932 = > 0x0001_deadbeef_cafefeed > > k = -16376 x = 0x8.0000000000000000p-16379 = 2.151746011591739844e-4930 = > 0x0007_80000000_00000000 > k = -16377 x = 0x8.0000000000000000p-16380 = 1.075873005795869922e-4930 = > 0x0006_80000000_00000000 > k = -16378 x = 0x8.0000000000000000p-16381 = 5.379365028979349610e-4931 = > 0x0005_80000000_00000000 > k = -16379 x = 0x8.0000000000000000p-16382 = 2.689682514489674805e-4931 = > 0x0004_80000000_00000000 > k = -16380 x = 0x8.0000000000000000p-16383 = 1.344841257244837403e-4931 = > 0x0003_80000000_00000000 > k = -16381 x = 0x8.0000000000000000p-16384 = 6.724206286224187013e-4932 = > 0x0002_80000000_00000000 > k = -16382 x = 0x8.0000000000000000p-16385 = 3.362103143112093506e-4932 = > 0x0001_80000000_00000000 > > ---------- begin subnormals ---------- > > k = -16383 x = 0x8.0000000000000000p-16386 = 1.681051571556046753e-4932 = > 0x0000_80000000_00000000 > k = -16384 x = 0x4.0000000000000000p-16386 = 8.405257857780233766e-4933 = > 0x0000_40000000_00000000 > k = -16385 x = 0x2.0000000000000000p-16386 = 4.202628928890116883e-4933 = > 0x0000_20000000_00000000 > k = -16386 x = 0x1.0000000000000000p-16386 = 2.101314464445058441e-4933 = > 0x0000_10000000_00000000 > k = -16387 x = 0x0.8000000000000000p-16386 = 1.050657232222529221e-4933 = > 0x0000_08000000_00000000 > k = -16388 x = 0x0.4000000000000000p-16386 = 5.253286161112646104e-4934 = > 0x0000_04000000_00000000 > k = -16389 x = 0x0.2000000000000000p-16386 = 2.626643080556323052e-4934 = > 0x0000_02000000_00000000 > My Aranym 68040 test agrees with the Motorola 68882 result from Stan. My QEMU 68040 test agrees with Nelson's results. It's suprising to see a discrepancy between the two emulators, but it seems to be real (same rootfs image). $ qemu-system-m68k --version QEMU emulator version 6.0.0 Copyright (c) 2003-2021 Fabrice Bellard and the QEMU Project developers $ aranym-mmu --version ARAnyM 1.1.0 2020/06/16 (git:3ab938a4) Using config file: '/home/fthain/.aranym/config' Configuration: SDL (compiled) : 2.0.10 SDL (linked) : 2.0.14 CPU JIT compiler : disabled FPU JIT compiler : disabled Addressing mode : direct Memory check : page Full MMU : enabled FPU : MPFR DSP : enabled DSP disassembler : disabled OpenGL support : enabled Native features : audio bootstrap xhdi ethernet hostfs cdrom(linux) scsi jpeg vdi(opengl,sw) exec config clipboard > ... > > At present, I have no other operating system than Debian 11 on M68K. > > Web searches indicate that OpenBSD 5.1 ran on that CPU, but its > > package archives have been been deleted. NetBSD 9.2 has an ISO image > > for M68K, but I have not yet successfully created a VM for it. > > Suggestions for other O/Ses to try are welcome. > > NetBSD runs on m68k systems; see http://www.netbsd.org. You could also > try an earlier version of Debian (3.0 or 4.0) on m68k. And you might > want to compare the musl libc to glibc; see > https://wiki.musl-libc.org/functional-differences-from-glibc.html > Another possibility would be A/UX, if more results are needed. There is an emulator that's intented to run A/UX called Shoebill. https://github.com/pruten/shoebill I don't know whether any of the many available emulators is capable of running a NetBSD/m68k port. That might be a question for a different mailing list.