mirror of
https://github.com/glest/glest-source.git
synced 2025-08-17 21:51:17 +02:00
- attempt to see if this win64 asm is more reliable for streflop
This commit is contained in:
@@ -137,14 +137,14 @@ enum FPU_RoundMode {
|
||||
#if _WIN64
|
||||
|
||||
/* No fldcw intrinsics on Windows x64, punt to external asm */
|
||||
extern "C" { void streflop_winx64_fldcw(unsigned int mode); }
|
||||
extern "C" { unsigned int streflop_winx64_fstcw(); }
|
||||
extern "C" { void streflop_winx64_fldcw(short mode); }
|
||||
extern "C" { short streflop_winx64_fstcw(); }
|
||||
extern "C" { void streflop_winx64_fclex(void); }
|
||||
extern "C" { void streflop_winx64_stmxcsr(unsigned int mode); }
|
||||
extern "C" { void streflop_winx64_ldmxcsr(unsigned int mode); }
|
||||
extern "C" { void streflop_winx64_stmxcsr(int mode); }
|
||||
extern "C" { void streflop_winx64_ldmxcsr(int mode); }
|
||||
|
||||
#define STREFLOP_FSTCW(cw) do { int tmp = 0; tmp = streflop_winx64_fstcw(); (cw) = tmp; } while (0)
|
||||
#define STREFLOP_FLDCW(cw) do { int tmp = (cw); streflop_winx64_fldcw(tmp); } while (0)
|
||||
#define STREFLOP_FSTCW(cw) do { short tmp = 0; tmp = streflop_winx64_fstcw(); (cw) = tmp; } while (0)
|
||||
#define STREFLOP_FLDCW(cw) do { short tmp = (cw); streflop_winx64_fldcw(tmp); } while (0)
|
||||
#define STREFLOP_STMXCSR(cw) do { int tmp = 0; streflop_winx64_stmxcsr(tmp); (cw) = tmp; } while (0)
|
||||
#define STREFLOP_LDMXCSR(cw) do { int tmp = (cw); streflop_winx64_ldmxcsr(tmp); } while (0)
|
||||
|
||||
|
Reference in New Issue
Block a user