From 4776d80aaae49bef921149bf1ab7d60f87fff7fc Mon Sep 17 00:00:00 2001 From: Martijn Berger Date: Fri, 5 Sep 2014 11:09:54 +0200 Subject: [PATCH] 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 --- source/creator/creator.c | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) 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 /* needed for _set_FMA3_enable */ +# endif # include # 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!) */