Sunday December 17, 2006 One user reported an interesting problem: the same application was giving one result on Ultra III and different result on Ultra IV and Ultra II.
Turned out that some operations on floating point were trapping into the OS on ultra3 and Solaris fp emulator executed them in IEEE compliant way whereas Ultra4 and Ultra2 were executing the same code natively on cpu and because 'non-standard' bit in fsr register was set, Ultra4/2 chips produced different result than Solaris emulation.
Of course this behaviour of Ultra3 is documented, but you really need to be a chip guru to know/remember such details.
That's just something to be aware of if you use floating point a lot
and compile with -ffast-math or -fsimple or -fns flags with GCCfss.
This site is a personal blog and is to be used for informational purposes only. The views expressed on this blog are those of the author only, and should not be attributed to any past or present employers.