What's strange to me is that extending the aforementionned program to to mul.d instead of madd.d, and given this definition of "big" :
big: .quad 0x7f0fffffffffffff // ie. 1.0972248137587376e+304 in double one can obtain all these results without getting any exception : 1*nan = nan 1*qnan = nan big*big = inf I would expect either 1*nan or 1*qnan to gives an exception too, but I've not finished to read MIPS literature, loongson manual and IEEE specs :-) So it seams only the extended instructions trigger an exception? If that's the case, then maybe this could be related to this enigmatic provision of the manual: "The FPU adds a sixth exception type, the Unimplemented Operation (E), to use when the FPU cannot implement the standard MIPS floating point architecture, ..." Cf p.100 of the manual. -- You received this message because you are subscribed to the Google Groups "loongson-dev" group. To post to this group, send email to loongson-dev@googlegroups.com. To unsubscribe from this group, send email to loongson-dev+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/loongson-dev?hl=en.