Subject: pkg/35347: TME sun3 emulator - floating point emulation asserts under big-endian host
To: None <pkg-manager@netbsd.org, gnats-admin@netbsd.org,>
From: None <arthur@ilvsun3.com>
List: pkgsrc-bugs
Date: 12/31/2006 00:15:01
>Number: 35347
>Category: pkg
>Synopsis: TME sun3 emulator - floating point emulation asserts under big-endian host
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: pkg-manager
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Sun Dec 31 00:15:01 +0000 2006
>Originator: arthur townsend
>Release: 3.0
>Organization:
>Environment:
3.0 - sparc 32 bit userland running on an ultrasparc 10.
>Description:
(Most) floating point operations inside the emulator work correctly - when running under an Intel or AMD 32-bit userland (little-endian), but fail under a Ultrasparc 32-bit userland (big-endian). TME asserts there is a problem, and if the assertion is ignored, incorrect results are returned.
>How-To-Repeat:
In SunOS 4.1.1 inside the emulator, enter "foption" with assertions ignored. With an Intel/AMD host, SunOS returns "68881". But with an ultrasparc host, SunOS returns "Please note: mc68881 upgrade to A93N mask may be advisable. See floating point programmer's guide".
Or the assertion can be seen when executing the 68881 instructions: fmovel, fmoved, fcmpd.
>Fix: