deps: fix V8 build issue with inline methods · nodejs/node@0d78bc3 · GitHub
Skip to content

Commit 0d78bc3

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 5214918 commit 0d78bc3

4 files changed

Lines changed: 15 additions & 2 deletions

File tree

common.gypi

Lines changed: 1 addition & 1 deletion

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

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

91+
#if !defined(_WIN32) || defined(_WIN64)
9192
void FixedArray::set(int index, Smi value) {
9293
DCHECK_NE(map(), GetReadOnlyRoots().fixed_cow_array_map());
9394
DCHECK_LT(static_cast<unsigned>(index), static_cast<unsigned>(length()));
9495
DCHECK(Object(value).IsSmi());
9596
int offset = OffsetOfElementAt(index);
9697
RELAXED_WRITE_FIELD(*this, offset, value);
9798
}
99+
#endif
98100

99101
void FixedArray::set(int index, Object value) {
100102
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
@@ -130,7 +130,18 @@ class FixedArray
130130
inline bool is_the_hole(Isolate* isolate, int index);
131131

132132
// Setter that doesn't need write barrier.
133+
#if defined(_WIN32) && !defined(_WIN64)
134+
inline void set(int index, Smi value) {
135+
DCHECK_NE(map(), GetReadOnlyRoots().fixed_cow_array_map());
136+
DCHECK_LT(static_cast<unsigned>(index), static_cast<unsigned>(length()));
137+
DCHECK(Object(value).IsSmi());
138+
int offset = OffsetOfElementAt(index);
139+
RELAXED_WRITE_FIELD(*this, offset, value);
140+
}
141+
#else
133142
inline void set(int index, Smi value);
143+
#endif
144+
134145
// Setter with explicit barrier mode.
135146
inline void set(int index, Object value, WriteBarrierMode mode);
136147

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

Lines changed: 1 addition & 1 deletion

0 commit comments

Comments
 (0)