mirror of
https://github.com/nodejs/node.git
synced 2024-11-21 10:59:27 +00:00
deps: patch V8 to support compilation with MSVC
After enabling -std:c++20 on Windows, patch is now much smaller. PR-URL: https://github.com/nodejs/node/pull/52465 Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: Rafael Gonzaga <rafael.nunu@hotmail.com> Reviewed-By: Michael Dawson <midawson@redhat.com>
This commit is contained in:
parent
b338202fab
commit
4728eb0f02
@ -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
|
||||
|
@ -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
|
||||
}
|
||||
|
2
deps/v8/src/objects/tagged-field.h
vendored
2
deps/v8/src/objects/tagged-field.h
vendored
@ -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<ReturnType&>(*(this + 1)); \
|
||||
} \
|
||||
const FlexibleDataReturnType& name() const { \
|
||||
static_assert(alignof(Type) <= alignof(decltype(*this))); \
|
||||
using ReturnType = Type[0]; \
|
||||
return reinterpret_cast<const ReturnType&>(*(this + 1)); \
|
||||
} \
|
||||
|
Loading…
Reference in New Issue
Block a user