Index: src/platform-win32.cc |
diff --git a/src/platform-win32.cc b/src/platform-win32.cc |
index 11dcdcc769c87382dccf2abb7d52512336fff2b2..08d03e14906c5c3fe3fe9fb86d56f777f4b74df4 100644 |
--- a/src/platform-win32.cc |
+++ b/src/platform-win32.cc |
@@ -19,7 +19,6 @@ |
#include "v8.h" |
-#include "codegen.h" |
#include "isolate-inl.h" |
#include "platform.h" |
@@ -130,68 +129,6 @@ void OS::MemMove(void* dest, const void* src, size_t size) { |
#endif // V8_TARGET_ARCH_IA32 |
-#ifdef _WIN64 |
-typedef double (*ModuloFunction)(double, double); |
-static ModuloFunction modulo_function = NULL; |
-// Defined in codegen-x64.cc. |
-ModuloFunction CreateModuloFunction(); |
- |
-void init_modulo_function() { |
- modulo_function = CreateModuloFunction(); |
-} |
- |
- |
-double modulo(double x, double y) { |
- // Note: here we rely on dependent reads being ordered. This is true |
- // on all architectures we currently support. |
- return (*modulo_function)(x, y); |
-} |
-#else // Win32 |
- |
-double modulo(double x, double y) { |
- // Workaround MS fmod bugs. ECMA-262 says: |
- // dividend is finite and divisor is an infinity => result equals dividend |
- // dividend is a zero and divisor is nonzero finite => result equals dividend |
- if (!(std::isfinite(x) && (!std::isfinite(y) && !std::isnan(y))) && |
- !(x == 0 && (y != 0 && std::isfinite(y)))) { |
- x = fmod(x, y); |
- } |
- return x; |
-} |
- |
-#endif // _WIN64 |
- |
- |
-#define UNARY_MATH_FUNCTION(name, generator) \ |
-static UnaryMathFunction fast_##name##_function = NULL; \ |
-void init_fast_##name##_function() { \ |
- fast_##name##_function = generator; \ |
-} \ |
-double fast_##name(double x) { \ |
- return (*fast_##name##_function)(x); \ |
-} |
- |
-UNARY_MATH_FUNCTION(exp, CreateExpFunction()) |
-UNARY_MATH_FUNCTION(sqrt, CreateSqrtFunction()) |
- |
-#undef UNARY_MATH_FUNCTION |
- |
- |
-void lazily_initialize_fast_exp() { |
- if (fast_exp_function == NULL) { |
- init_fast_exp_function(); |
- } |
-} |
- |
- |
-void MathSetup() { |
-#ifdef _WIN64 |
- init_modulo_function(); |
-#endif |
- // fast_exp is initialized lazily. |
- init_fast_sqrt_function(); |
-} |
- |
class TimezoneCache { |
public: |
@@ -516,9 +453,6 @@ char* Win32Time::LocalTimezone(TimezoneCache* cache) { |
void OS::PostSetUp() { |
- // Math functions depend on CPU features therefore they are initialized after |
- // CPU. |
- MathSetup(); |
#if V8_TARGET_ARCH_IA32 |
OS::MemMoveFunction generated_memmove = CreateMemMoveFunction(); |
if (generated_memmove != NULL) { |