diff --git a/common.gypi b/common.gypi index fd94ac4ae6605c..655885de4559f8 100644 --- a/common.gypi +++ b/common.gypi @@ -37,7 +37,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.7', + 'v8_embedder_string': '-node.8', ##### V8 defaults for Node.js ##### @@ -288,6 +288,8 @@ '/Zc:__cplusplus', # The following option enables c++20 on Windows. This is needed for V8 v12.4+ '-std:c++20', + # The following option reduces the "error C1060: compiler is out of heap space" + '/Zm2000', ], 'BufferSecurityCheck': 'true', 'DebugInformationFormat': 1, # /Z7 embed info in .obj files diff --git a/deps/v8/src/compiler/backend/instruction-selector-adapter.h b/deps/v8/src/compiler/backend/instruction-selector-adapter.h index 7477b4d0b7c322..f4a539e0822bb0 100644 --- a/deps/v8/src/compiler/backend/instruction-selector-adapter.h +++ b/deps/v8/src/compiler/backend/instruction-selector-adapter.h @@ -855,12 +855,13 @@ struct TurboshaftAdapter : public turboshaft::OperationMatcher { *traps_on_null = load_->kind.trap_on_null; #if V8_ENABLE_WEBASSEMBLY } else { - DCHECK((load_transform_ && !load_transform_->load_kind.trap_on_null) #if V8_ENABLE_WASM_SIMD256_REVEC + DCHECK((load_transform_ && !load_transform_->load_kind.trap_on_null) || (load_transform256_ && - !load_transform256_->load_kind.trap_on_null) + !load_transform256_->load_kind.trap_on_null)); +#else + DCHECK((load_transform_ && !load_transform_->load_kind.trap_on_null)); #endif // V8_ENABLE_WASM_SIMD256_REVEC - ); *traps_on_null = false; #endif // V8_ENABLE_WEBASSEMBLY } diff --git a/deps/v8/src/objects/tagged-field.h b/deps/v8/src/objects/tagged-field.h index 32410030f3c47c..27cc61682a11aa 100644 --- a/deps/v8/src/objects/tagged-field.h +++ b/deps/v8/src/objects/tagged-field.h @@ -100,12 +100,10 @@ static_assert(sizeof(UnalignedDoubleMember) == sizeof(double)); #define FLEXIBLE_ARRAY_MEMBER(Type, name) \ using FlexibleDataReturnType = Type[0]; \ FlexibleDataReturnType& name() { \ - static_assert(alignof(Type) <= alignof(decltype(*this))); \ using ReturnType = Type[0]; \ return reinterpret_cast(*(this + 1)); \ } \ const FlexibleDataReturnType& name() const { \ - static_assert(alignof(Type) <= alignof(decltype(*this))); \ using ReturnType = Type[0]; \ return reinterpret_cast(*(this + 1)); \ } \