From d942482a69f6a72605cee42ff7724b23e62204bf Mon Sep 17 00:00:00 2001 From: "hausmann@webkit.org" Date: Thu, 3 Jan 2013 09:54:36 +0000 Subject: [MinGW-w64] Centralize workaround for pow() implementation https://bugs.webkit.org/show_bug.cgi?id=105925 Reviewed by Sam Weinig. As suggested by Sam, move the MinGW-w64 workaround into MathExtras.h away from the JSC usage. Source/JavaScriptCore: * runtime/MathObject.cpp: (JSC::mathPow): Source/WTF: * wtf/MathExtras.h: (wtf_pow): Change-Id: I49b2365baae6fdd9700667d1ef53c78bd70f6de3 git-svn-id: http://svn.webkit.org/repository/webkit/trunk@138705 268f45cc-cd09-0410-ab3c-d52691b4dbfc Reviewed-by: Simon Hausmann --- Source/JavaScriptCore/runtime/MathObject.cpp | 16 ---------------- 1 file changed, 16 deletions(-) (limited to 'Source/JavaScriptCore/runtime/MathObject.cpp') diff --git a/Source/JavaScriptCore/runtime/MathObject.cpp b/Source/JavaScriptCore/runtime/MathObject.cpp index f939b8dd4..7634487ad 100644 --- a/Source/JavaScriptCore/runtime/MathObject.cpp +++ b/Source/JavaScriptCore/runtime/MathObject.cpp @@ -232,22 +232,6 @@ static ALWAYS_INLINE double mathPow(double x, double y) ALWAYS_INLINE double mathPow(double x, double y) { -#if COMPILER(MINGW64) - // MinGW-w64 has a custom implementation for pow. - // This handles certain special cases that are different. - if ((x == 0.0 || isinf(x)) && isfinite(y)) { - double f; - if (modf(y, &f) != 0.0) - return ((x == 0.0) ^ (y > 0.0)) ? std::numeric_limits::infinity() : 0.0; - } - - if (x == 2.0) { - int yInt = static_cast(y); - if (y == yInt) - return ldexp(1.0, yInt); - } -#endif - return pow(x, y); } -- cgit v1.2.1