mirror of
https://github.com/ZDoom/qzdoom.git
synced 2024-11-10 23:02:08 +00:00
- 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:
parent
c8538efda9
commit
efb8ffc459
3 changed files with 18617 additions and 18589 deletions
37180
docs/rh-log.txt
37180
docs/rh-log.txt
File diff suppressed because it is too large
Load diff
|
@ -116,6 +116,12 @@ else( WIN32 )
|
|||
if( NO_GTK )
|
||||
add_definitions( -DNO_GTK=1 )
|
||||
endif( NO_GTK )
|
||||
|
||||
find_path( FPU_CONTROL_DIR fpu_control.h )
|
||||
if( FPU_CONTROL_DIR )
|
||||
include_directories( ${FPU_CONTROL_DIR} )
|
||||
add_definitions( -DHAVE_FPU_CONTROL )
|
||||
endif( FPU_CONTROL_DIR )
|
||||
endif( WIN32 )
|
||||
|
||||
if( X64 )
|
||||
|
|
|
@ -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);
|
||||
|
|
Loading…
Reference in a new issue