apartmentEmulator / mupen64plus

Automatically exported from code.google.com/p/mupen64plus
0 stars 0 forks source link

Rounding not correctly set on x86 pure interpreter #272

Closed GoogleCodeExporter closed 8 years ago

GoogleCodeExporter commented 8 years ago
Just checked macros.h noticed that #ifdef X86 inside. This is not set
anywhere. As result functions like TRUNC_L_D wouldn't set the trunk mode.
You can also check that it isn't evaluated right by adding and then
recompiling from clean sources (macros.h is missing as dependency for all
files which uses it - so don't expect that make will recompile the sources
which include it) 

#error THIS SHOULD ALWAYS FAIL

after 

#define set_rounding() __asm__ __volatile__("fldcw %0" : : "m" (rounding_mode))

This means that it is not set. Your must define X86 using -DX86 or test X86
compatibility otherwise.

Original issue reported on code.google.com by sven@narfation.org on 24 Sep 2009 at 10:58

GoogleCodeExporter commented 8 years ago
Of course the compile test only fails on x86 or amd64 (or in this case doesn't 
fail
even if the compile should fail).

Original comment by sven@narfation.org on 24 Sep 2009 at 11:00

GoogleCodeExporter commented 8 years ago

Original comment by sven@narfation.org on 26 Sep 2009 at 9:45

Attachments:

GoogleCodeExporter commented 8 years ago
Thanks, fixed in r1406.

Original comment by richard...@gmail.com on 29 Sep 2009 at 3:29