- The x87 precision control is now explicitly set for double precision, since

GCC defaults to extended precision instead, unlike Visual C++.
- Removed the useless src/Linux directory from the repository. This was a
  holdover from the long-gone 1.22 build system.



SVN r1118 (trunk)
This commit is contained in:
Randy Heit 2008-08-06 18:26:25 +00:00
commit efb8ffc459
3 changed files with 18617 additions and 18589 deletions

View file

@ -31,7 +31,12 @@
#define mkdir(a,b) _mkdir (a)
#else
#include <sys/stat.h>
#endif
#endif
#ifdef HAVE_CPU_CONTROL
#include <fpu_control.h>
#endif
#include <float.h>
#ifdef unix
#include <unistd.h>
@ -2068,6 +2073,19 @@ void D_DoomMain (void)
const IWADInfo *iwad_info;
srand(I_MSTime());
// Set the FPU precision to 53 significant bits. This is the default
// for Visual C++, but not for GCC, so some slight math variances
// might crop up if we leave it alone.
#if defined(_FPU_GETCW)
{
int cw;
_FPU_GETCW(cw);
_FPU_SETCW((cw & ~_FPU_EXTENDED) | _FPU_DOUBLE);
}
#elif defined(_PC_53)
_control87(_PC_53, _MCW_PC);
#endif
PClass::StaticInit ();
atterm (C_DeinitConsole);