diff options
author | Jiawen Geng <technicalcute@gmail.com> | 2020-10-14 15:22:20 +0300 |
---|---|---|
committer | Michaƫl Zasso <targos@protonmail.com> | 2020-10-18 21:17:20 +0300 |
commit | 3c23af4cb7abc3f75650ef2ecb8b404515e26466 (patch) | |
tree | 7ed32325dda41c6f43dc5e7f6f3018196d092efa | |
parent | b803b3f48b4018870b168bb7ed0174ab5e984b46 (diff) |
deps: fix V8 build issue with inline methods
PR-URL: https://github.com/nodejs/node/pull/35415
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Daniel Bevenius <daniel.bevenius@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Myles Borins <myles.borins@gmail.com>
-rw-r--r-- | common.gypi | 2 | ||||
-rw-r--r-- | deps/v8/src/objects/fixed-array-inl.h | 2 | ||||
-rw-r--r-- | deps/v8/src/objects/fixed-array.h | 11 | ||||
-rw-r--r-- | deps/v8/src/objects/tagged-field.h | 6 |
4 files changed, 17 insertions, 4 deletions
diff --git a/common.gypi b/common.gypi index 713a1d2fa6a..943bab5add3 100644 --- a/common.gypi +++ b/common.gypi @@ -36,7 +36,7 @@ # Reset this number to 0 on major V8 upgrades. # Increment by one for each non-official patch applied to deps/v8. - 'v8_embedder_string': '-node.10', + 'v8_embedder_string': '-node.11', ##### V8 defaults for Node.js ##### diff --git a/deps/v8/src/objects/fixed-array-inl.h b/deps/v8/src/objects/fixed-array-inl.h index f6c52b8ed02..7c0013e3b2e 100644 --- a/deps/v8/src/objects/fixed-array-inl.h +++ b/deps/v8/src/objects/fixed-array-inl.h @@ -88,6 +88,7 @@ bool FixedArray::is_the_hole(Isolate* isolate, int index) { return get(isolate, index).IsTheHole(isolate); } +#if !defined(_WIN32) || defined(_WIN64) void FixedArray::set(int index, Smi value) { DCHECK_NE(map(), GetReadOnlyRoots().fixed_cow_array_map()); DCHECK_LT(static_cast<unsigned>(index), static_cast<unsigned>(length())); @@ -95,6 +96,7 @@ void FixedArray::set(int index, Smi value) { int offset = OffsetOfElementAt(index); RELAXED_WRITE_FIELD(*this, offset, value); } +#endif void FixedArray::set(int index, Object value) { DCHECK_NE(GetReadOnlyRoots().fixed_cow_array_map(), map()); diff --git a/deps/v8/src/objects/fixed-array.h b/deps/v8/src/objects/fixed-array.h index fea05b40013..9ec197ca1f6 100644 --- a/deps/v8/src/objects/fixed-array.h +++ b/deps/v8/src/objects/fixed-array.h @@ -122,7 +122,18 @@ class FixedArray inline bool is_the_hole(Isolate* isolate, int index); // Setter that doesn't need write barrier. +#if defined(_WIN32) && !defined(_WIN64) + inline void set(int index, Smi value) { + DCHECK_NE(map(), GetReadOnlyRoots().fixed_cow_array_map()); + DCHECK_LT(static_cast<unsigned>(index), static_cast<unsigned>(length())); + DCHECK(Object(value).IsSmi()); + int offset = OffsetOfElementAt(index); + RELAXED_WRITE_FIELD(*this, offset, value); + } +#else inline void set(int index, Smi value); +#endif + // Setter with explicit barrier mode. inline void set(int index, Object value, WriteBarrierMode mode); diff --git a/deps/v8/src/objects/tagged-field.h b/deps/v8/src/objects/tagged-field.h index 947bf6247b5..82b6268ecd4 100644 --- a/deps/v8/src/objects/tagged-field.h +++ b/deps/v8/src/objects/tagged-field.h @@ -45,11 +45,11 @@ class TaggedField : public AllStatic { static inline T Relaxed_Load(HeapObject host, int offset = 0); template <typename LocalIsolate> - static inline T Relaxed_Load(const LocalIsolate* isolate, HeapObject host, - int offset = 0); + static T Relaxed_Load(const LocalIsolate* isolate, HeapObject host, + int offset = 0); static inline void Relaxed_Store(HeapObject host, T value); - static inline void Relaxed_Store(HeapObject host, int offset, T value); + static void Relaxed_Store(HeapObject host, int offset, T value); static inline T Acquire_Load(HeapObject host, int offset = 0); template <typename LocalIsolate> |