Skip to content

Commit b83cab7

Browse files
gengjiawentargos
authored andcommitted
deps: fix V8 build issue with inline methods
PR-URL: #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>
1 parent 068824d commit b83cab7

File tree

4 files changed

+15
-2
lines changed

4 files changed

+15
-2
lines changed

common.gypi

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@
3636

3737
# Reset this number to 0 on major V8 upgrades.
3838
# Increment by one for each non-official patch applied to deps/v8.
39-
'v8_embedder_string': '-node.4',
39+
'v8_embedder_string': '-node.5',
4040

4141
##### V8 defaults for Node.js #####
4242

deps/v8/src/objects/fixed-array-inl.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -84,13 +84,15 @@ bool FixedArray::is_the_hole(Isolate* isolate, int index) {
8484
return get(isolate, index).IsTheHole(isolate);
8585
}
8686

87+
#if !defined(_WIN32) || defined(_WIN64)
8788
void FixedArray::set(int index, Smi value) {
8889
DCHECK_NE(map(), GetReadOnlyRoots().fixed_cow_array_map());
8990
DCHECK_LT(static_cast<unsigned>(index), static_cast<unsigned>(length()));
9091
DCHECK(Object(value).IsSmi());
9192
int offset = OffsetOfElementAt(index);
9293
RELAXED_WRITE_FIELD(*this, offset, value);
9394
}
95+
#endif
9496

9597
void FixedArray::set(int index, Object value) {
9698
DCHECK_NE(GetReadOnlyRoots().fixed_cow_array_map(), map());

deps/v8/src/objects/fixed-array.h

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -134,7 +134,18 @@ class FixedArray
134134
inline bool is_the_hole(Isolate* isolate, int index);
135135

136136
// Setter that doesn't need write barrier.
137+
#if defined(_WIN32) && !defined(_WIN64)
138+
inline void set(int index, Smi value) {
139+
DCHECK_NE(map(), GetReadOnlyRoots().fixed_cow_array_map());
140+
DCHECK_LT(static_cast<unsigned>(index), static_cast<unsigned>(length()));
141+
DCHECK(Object(value).IsSmi());
142+
int offset = OffsetOfElementAt(index);
143+
RELAXED_WRITE_FIELD(*this, offset, value);
144+
}
145+
#else
137146
inline void set(int index, Smi value);
147+
#endif
148+
138149
// Setter with explicit barrier mode.
139150
inline void set(int index, Object value, WriteBarrierMode mode);
140151

deps/v8/src/objects/tagged-field.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ class TaggedField : public AllStatic {
4949
int offset = 0);
5050

5151
static inline void Relaxed_Store(HeapObject host, T value);
52-
static inline void Relaxed_Store(HeapObject host, int offset, T value);
52+
static void Relaxed_Store(HeapObject host, int offset, T value);
5353

5454
static inline T Acquire_Load(HeapObject host, int offset = 0);
5555
static inline T Acquire_Load_No_Unpack(PtrComprCageBase cage_base,

0 commit comments

Comments
 (0)