From 5ecbd5c87144c0f36089ba91e37d5768fc766315 Mon Sep 17 00:00:00 2001 From: "Sv. Lockal" Date: Tue, 30 Sep 2014 13:27:56 +0400 Subject: Use native float math functions for MSVC12 `double` surrogates are slow (e.g. pow is 2x slower than powf), and MSVC12 supports fp-math functions from C99. --- source/blender/blenlib/BLI_math_base.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'source/blender/blenlib/BLI_math_base.h') diff --git a/source/blender/blenlib/BLI_math_base.h b/source/blender/blenlib/BLI_math_base.h index 5f94f04e0a8..494bc4083ba 100644 --- a/source/blender/blenlib/BLI_math_base.h +++ b/source/blender/blenlib/BLI_math_base.h @@ -83,8 +83,8 @@ static const int NAN_INT = 0x7FC00000; # define NAN_FLT (*((float *)(&NAN_INT))) #endif -/* do not redefine functions from C99 or POSIX.1-2001 */ -#if !(defined(_ISOC99_SOURCE) || (defined(_POSIX_C_SOURCE) && _POSIX_C_SOURCE >= 200112L)) +/* do not redefine functions from C99, POSIX.1-2001 or MSVC12 (partial C99) */ +#if !(defined(_ISOC99_SOURCE) || (defined(_POSIX_C_SOURCE) && _POSIX_C_SOURCE >= 200112L) || (defined(_MSC_VER) && _MSC_VER >= 1800)) #ifndef sqrtf #define sqrtf(a) ((float)sqrt(a)) @@ -138,7 +138,7 @@ static const int NAN_INT = 0x7FC00000; #define copysignf(a, b) ((float)copysign(a, b)) #endif -#endif /* C99 or POSIX.1-2001 */ +#endif /* C99, POSIX.1-2001 or MSVC12 (partial C99) */ #ifdef WIN32 # if defined(_MSC_VER) -- cgit v1.2.3