summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--deps/v8/BUILD.gn2
-rw-r--r--deps/v8/include/v8-version.h4
-rw-r--r--deps/v8/src/base/platform/platform-freebsd.cc5
-rw-r--r--deps/v8/src/base/platform/platform-linux.cc5
-rw-r--r--deps/v8/src/base/platform/platform-macos.cc6
-rw-r--r--deps/v8/src/base/platform/platform-openbsd.cc5
-rw-r--r--deps/v8/src/base/platform/platform-posix-time.cc31
-rw-r--r--deps/v8/src/base/platform/platform-posix-time.h19
-rw-r--r--deps/v8/src/base/platform/platform-posix.cc20
-rw-r--r--deps/v8/src/base/platform/platform-posix.h2
-rw-r--r--deps/v8/src/base/platform/platform-qnx.cc5
-rw-r--r--deps/v8/src/v8.gyp14
12 files changed, 88 insertions, 30 deletions
diff --git a/deps/v8/BUILD.gn b/deps/v8/BUILD.gn
index 2060cb1981..b60425df45 100644
--- a/deps/v8/BUILD.gn
+++ b/deps/v8/BUILD.gn
@@ -2507,6 +2507,8 @@ v8_component("v8_libbase") {
if (is_posix) {
sources += [
+ "src/base/platform/platform-posix-time.cc",
+ "src/base/platform/platform-posix-time.h",
"src/base/platform/platform-posix.cc",
"src/base/platform/platform-posix.h",
]
diff --git a/deps/v8/include/v8-version.h b/deps/v8/include/v8-version.h
index 0889459ca7..db9369f649 100644
--- a/deps/v8/include/v8-version.h
+++ b/deps/v8/include/v8-version.h
@@ -10,8 +10,8 @@
// system so their names cannot be changed without changing the scripts.
#define V8_MAJOR_VERSION 6
#define V8_MINOR_VERSION 0
-#define V8_BUILD_NUMBER 286
-#define V8_PATCH_LEVEL 52
+#define V8_BUILD_NUMBER 287
+#define V8_PATCH_LEVEL 53
// Use 1 for candidates and 0 otherwise.
// (Boolean macro values are not supported by all preprocessors.)
diff --git a/deps/v8/src/base/platform/platform-freebsd.cc b/deps/v8/src/base/platform/platform-freebsd.cc
index 5c5b8a0d3b..9ab1601e7a 100644
--- a/deps/v8/src/base/platform/platform-freebsd.cc
+++ b/deps/v8/src/base/platform/platform-freebsd.cc
@@ -29,13 +29,16 @@
#undef MAP_TYPE
#include "src/base/macros.h"
+#include "src/base/platform/platform-posix-time.h"
#include "src/base/platform/platform-posix.h"
#include "src/base/platform/platform.h"
namespace v8 {
namespace base {
-TimezoneCache* OS::CreateTimezoneCache() { return new PosixTimezoneCache(); }
+TimezoneCache* OS::CreateTimezoneCache() {
+ return new PosixDefaultTimezoneCache();
+}
void* OS::Allocate(const size_t requested, size_t* allocated,
OS::MemoryPermission access) {
diff --git a/deps/v8/src/base/platform/platform-linux.cc b/deps/v8/src/base/platform/platform-linux.cc
index 483cdd49ca..ba161b26c7 100644
--- a/deps/v8/src/base/platform/platform-linux.cc
+++ b/deps/v8/src/base/platform/platform-linux.cc
@@ -44,6 +44,7 @@
#undef MAP_TYPE
#include "src/base/macros.h"
+#include "src/base/platform/platform-posix-time.h"
#include "src/base/platform/platform-posix.h"
#include "src/base/platform/platform.h"
@@ -92,7 +93,9 @@ bool OS::ArmUsingHardFloat() {
#endif // def __arm__
-TimezoneCache* OS::CreateTimezoneCache() { return new PosixTimezoneCache(); }
+TimezoneCache* OS::CreateTimezoneCache() {
+ return new PosixDefaultTimezoneCache();
+}
void* OS::Allocate(const size_t requested, size_t* allocated,
OS::MemoryPermission access) {
diff --git a/deps/v8/src/base/platform/platform-macos.cc b/deps/v8/src/base/platform/platform-macos.cc
index 7d1a6d2471..50ac55d880 100644
--- a/deps/v8/src/base/platform/platform-macos.cc
+++ b/deps/v8/src/base/platform/platform-macos.cc
@@ -36,10 +36,10 @@
#undef MAP_TYPE
#include "src/base/macros.h"
+#include "src/base/platform/platform-posix-time.h"
#include "src/base/platform/platform-posix.h"
#include "src/base/platform/platform.h"
-
namespace v8 {
namespace base {
@@ -97,7 +97,9 @@ std::vector<OS::SharedLibraryAddress> OS::GetSharedLibraryAddresses() {
void OS::SignalCodeMovingGC() {
}
-TimezoneCache* OS::CreateTimezoneCache() { return new PosixTimezoneCache(); }
+TimezoneCache* OS::CreateTimezoneCache() {
+ return new PosixDefaultTimezoneCache();
+}
VirtualMemory::VirtualMemory() : address_(NULL), size_(0) { }
diff --git a/deps/v8/src/base/platform/platform-openbsd.cc b/deps/v8/src/base/platform/platform-openbsd.cc
index 06040e2f40..0056ad56d4 100644
--- a/deps/v8/src/base/platform/platform-openbsd.cc
+++ b/deps/v8/src/base/platform/platform-openbsd.cc
@@ -27,13 +27,16 @@
#undef MAP_TYPE
#include "src/base/macros.h"
+#include "src/base/platform/platform-posix-time.h"
#include "src/base/platform/platform-posix.h"
#include "src/base/platform/platform.h"
namespace v8 {
namespace base {
-TimezoneCache* OS::CreateTimezoneCache() { return new PosixTimezoneCache(); }
+TimezoneCache* OS::CreateTimezoneCache() {
+ return new PosixDefaultTimezoneCache();
+}
void* OS::Allocate(const size_t requested, size_t* allocated,
OS::MemoryPermission access) {
diff --git a/deps/v8/src/base/platform/platform-posix-time.cc b/deps/v8/src/base/platform/platform-posix-time.cc
new file mode 100644
index 0000000000..a960f7237e
--- /dev/null
+++ b/deps/v8/src/base/platform/platform-posix-time.cc
@@ -0,0 +1,31 @@
+// Copyright 2017 the V8 project authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include <cmath>
+
+#include "src/base/platform/platform-posix-time.h"
+
+namespace v8 {
+namespace base {
+
+const char* PosixDefaultTimezoneCache::LocalTimezone(double time) {
+ if (std::isnan(time)) return "";
+ time_t tv = static_cast<time_t>(std::floor(time / msPerSecond));
+ struct tm tm;
+ struct tm* t = localtime_r(&tv, &tm);
+ if (!t || !t->tm_zone) return "";
+ return t->tm_zone;
+}
+
+double PosixDefaultTimezoneCache::LocalTimeOffset() {
+ time_t tv = time(NULL);
+ struct tm tm;
+ struct tm* t = localtime_r(&tv, &tm);
+ // tm_gmtoff includes any daylight savings offset, so subtract it.
+ return static_cast<double>(t->tm_gmtoff * msPerSecond -
+ (t->tm_isdst > 0 ? 3600 * msPerSecond : 0));
+}
+
+} // namespace base
+} // namespace v8
diff --git a/deps/v8/src/base/platform/platform-posix-time.h b/deps/v8/src/base/platform/platform-posix-time.h
new file mode 100644
index 0000000000..945ea3b2e9
--- /dev/null
+++ b/deps/v8/src/base/platform/platform-posix-time.h
@@ -0,0 +1,19 @@
+// Copyright 2017 the V8 project authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#include "src/base/platform/platform-posix.h"
+
+namespace v8 {
+namespace base {
+
+class PosixDefaultTimezoneCache : public PosixTimezoneCache {
+ public:
+ const char* LocalTimezone(double time_ms) override;
+ double LocalTimeOffset() override;
+
+ ~PosixDefaultTimezoneCache() override {}
+};
+
+} // namespace base
+} // namespace v8
diff --git a/deps/v8/src/base/platform/platform-posix.cc b/deps/v8/src/base/platform/platform-posix.cc
index 25c270ad28..621abbe6f1 100644
--- a/deps/v8/src/base/platform/platform-posix.cc
+++ b/deps/v8/src/base/platform/platform-posix.cc
@@ -388,26 +388,6 @@ double OS::TimeCurrentMillis() {
return Time::Now().ToJsTime();
}
-#if !V8_OS_AIX && !V8_OS_SOLARIS && !V8_OS_CYGWIN
-const char* PosixTimezoneCache::LocalTimezone(double time) {
- if (std::isnan(time)) return "";
- time_t tv = static_cast<time_t>(std::floor(time / msPerSecond));
- struct tm tm;
- struct tm* t = localtime_r(&tv, &tm);
- if (!t || !t->tm_zone) return "";
- return t->tm_zone;
-}
-
-double PosixTimezoneCache::LocalTimeOffset() {
- time_t tv = time(NULL);
- struct tm tm;
- struct tm* t = localtime_r(&tv, &tm);
- // tm_gmtoff includes any daylight savings offset, so subtract it.
- return static_cast<double>(t->tm_gmtoff * msPerSecond -
- (t->tm_isdst > 0 ? 3600 * msPerSecond : 0));
-}
-#endif
-
double PosixTimezoneCache::DaylightSavingsOffset(double time) {
if (std::isnan(time)) return std::numeric_limits<double>::quiet_NaN();
time_t tv = static_cast<time_t>(std::floor(time/msPerSecond));
diff --git a/deps/v8/src/base/platform/platform-posix.h b/deps/v8/src/base/platform/platform-posix.h
index 9818f64247..b092bb526d 100644
--- a/deps/v8/src/base/platform/platform-posix.h
+++ b/deps/v8/src/base/platform/platform-posix.h
@@ -13,9 +13,7 @@ namespace base {
class PosixTimezoneCache : public TimezoneCache {
public:
- const char* LocalTimezone(double time_ms) override;
double DaylightSavingsOffset(double time_ms) override;
- double LocalTimeOffset() override;
void Clear() override {}
~PosixTimezoneCache() override {}
diff --git a/deps/v8/src/base/platform/platform-qnx.cc b/deps/v8/src/base/platform/platform-qnx.cc
index 7ce3de119d..f151bba8bb 100644
--- a/deps/v8/src/base/platform/platform-qnx.cc
+++ b/deps/v8/src/base/platform/platform-qnx.cc
@@ -31,6 +31,7 @@
#undef MAP_TYPE
#include "src/base/macros.h"
+#include "src/base/platform/platform-posix-time.h"
#include "src/base/platform/platform-posix.h"
#include "src/base/platform/platform.h"
@@ -84,7 +85,9 @@ bool OS::ArmUsingHardFloat() {
#endif // __arm__
-TimezoneCache* OS::CreateTimezoneCache() { return new PosixTimezoneCache(); }
+TimezoneCache* OS::CreateTimezoneCache() {
+ return new PosixDefaultTimezoneCache();
+}
void* OS::Allocate(const size_t requested, size_t* allocated,
OS::MemoryPermission access) {
diff --git a/deps/v8/src/v8.gyp b/deps/v8/src/v8.gyp
index 8015a6bda6..c269f245aa 100644
--- a/deps/v8/src/v8.gyp
+++ b/deps/v8/src/v8.gyp
@@ -2063,6 +2063,8 @@
'base/platform/platform-linux.cc',
'base/platform/platform-posix.h',
'base/platform/platform-posix.cc',
+ 'base/platform/platform-posix-time.h',
+ 'base/platform/platform-posix-time.cc',
],
}
],
@@ -2071,6 +2073,8 @@
'base/debug/stack_trace_android.cc',
'base/platform/platform-posix.h',
'base/platform/platform-posix.cc',
+ 'base/platform/platform-posix-time.h',
+ 'base/platform/platform-posix-time.cc',
],
'link_settings': {
'target_conditions': [
@@ -2127,6 +2131,8 @@
'base/debug/stack_trace_posix.cc',
'base/platform/platform-posix.h',
'base/platform/platform-posix.cc',
+ 'base/platform/platform-posix-time.h',
+ 'base/platform/platform-posix-time.cc',
'base/qnx-math.h'
],
'target_conditions': [
@@ -2158,6 +2164,8 @@
'base/platform/platform-freebsd.cc',
'base/platform/platform-posix.h',
'base/platform/platform-posix.cc',
+ 'base/platform/platform-posix-time.h',
+ 'base/platform/platform-posix-time.cc',
],
}
],
@@ -2170,6 +2178,8 @@
'base/platform/platform-openbsd.cc',
'base/platform/platform-posix.h',
'base/platform/platform-posix.cc'
+ 'base/platform/platform-posix-time.h',
+ 'base/platform/platform-posix-time.cc',
],
}
],
@@ -2183,6 +2193,8 @@
'base/platform/platform-openbsd.cc',
'base/platform/platform-posix.h',
'base/platform/platform-posix.cc',
+ 'base/platform/platform-posix-time.h',
+ 'base/platform/platform-posix-time.cc',
],
}
],
@@ -2213,6 +2225,8 @@
'base/platform/platform-macos.cc',
'base/platform/platform-posix.h',
'base/platform/platform-posix.cc',
+ 'base/platform/platform-posix-time.h',
+ 'base/platform/platform-posix-time.cc',
]},
],
['OS=="win"', {