diff options
author | Martijn Berger <martijn.berger@gmail.com> | 2014-09-05 13:09:54 +0400 |
---|---|---|
committer | Martijn Berger <martijn.berger@gmail.com> | 2014-09-05 13:09:54 +0400 |
commit | 4776d80aaae49bef921149bf1ab7d60f87fff7fc (patch) | |
tree | 2d31fef9911fe9a2a71e81cd36c30bd9dcb3a075 /source/creator | |
parent | 220fcd43a9e48c3ca7be766433495a54d5471d71 (diff) |
Disable msvc runtime fma3 use in an attempt to fix msvc 2013 + windows 7 issues.
MS report:
https://connect.microsoft.com/VisualStudio/feedback/details/811093
Diffstat (limited to 'source/creator')
-rw-r--r-- | source/creator/creator.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/source/creator/creator.c b/source/creator/creator.c index 70e6aba8274..412ff374233 100644 --- a/source/creator/creator.c +++ b/source/creator/creator.c @@ -41,6 +41,9 @@ #endif #ifdef WIN32 +# if defined(_MSC_VER) && _MSC_VER >= 1800 && defined(_M_X64) +# include <math.h> /* needed for _set_FMA3_enable */ +# endif # include <windows.h> # include "utfconv.h" #endif @@ -1501,7 +1504,13 @@ int main( bArgs *ba; #endif -#ifdef WIN32 /* Win32 Unicode Args */ +#ifdef WIN32 + /* FMA3 support in the 2013 CRT is broken on Vista and Windows 7 RTM (fixed in SP1). Just disable it. */ +# if defined(_MSC_VER) && _MSC_VER >= 1800 && defined(_M_X64) + _set_FMA3_enable(0); +# endif + + /* Win32 Unicode Args */ /* NOTE: cannot use guardedalloc malloc here, as it's not yet initialized * (it depends on the args passed in, which is what we're getting here!) */ |