mirror of
https://github.com/nodejs/node.git
synced 2024-12-01 16:10:02 +01:00
v8: fix gcc 7 build errors
Porting https://github.com/nodejs/node/pull/12392 to master Ref: https://github.com/nodejs/node/pull/12392 Fixes: https://github.com/nodejs/node/issues/10388 PR-URL: https://github.com/nodejs/node/pull/12676 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Anna Henningsen <anna@addaleax.net>
This commit is contained in:
parent
97ec72b76d
commit
b07e1a828c
2
deps/v8/src/objects-body-descriptors.h
vendored
2
deps/v8/src/objects-body-descriptors.h
vendored
@ -99,7 +99,7 @@ class FixedBodyDescriptor final : public BodyDescriptorBase {
|
||||
|
||||
template <typename StaticVisitor>
|
||||
static inline void IterateBody(HeapObject* obj, int object_size) {
|
||||
IterateBody(obj);
|
||||
IterateBody<StaticVisitor>(obj);
|
||||
}
|
||||
};
|
||||
|
||||
|
21
deps/v8/src/objects-inl.h
vendored
21
deps/v8/src/objects-inl.h
vendored
@ -41,6 +41,27 @@
|
||||
namespace v8 {
|
||||
namespace internal {
|
||||
|
||||
template <typename Derived, typename Shape, typename Key>
|
||||
uint32_t HashTable<Derived, Shape, Key>::Hash(Key key) {
|
||||
if (Shape::UsesSeed) {
|
||||
return Shape::SeededHash(key, GetHeap()->HashSeed());
|
||||
} else {
|
||||
return Shape::Hash(key);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
template <typename Derived, typename Shape, typename Key>
|
||||
uint32_t HashTable<Derived, Shape, Key>::HashForObject(Key key,
|
||||
Object* object) {
|
||||
if (Shape::UsesSeed) {
|
||||
return Shape::SeededHashForObject(key, GetHeap()->HashSeed(), object);
|
||||
} else {
|
||||
return Shape::HashForObject(key, object);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
PropertyDetails::PropertyDetails(Smi* smi) {
|
||||
value_ = smi->value();
|
||||
}
|
||||
|
20
deps/v8/src/objects.h
vendored
20
deps/v8/src/objects.h
vendored
@ -3499,22 +3499,10 @@ class HashTable : public HashTableBase {
|
||||
public:
|
||||
typedef Shape ShapeT;
|
||||
|
||||
// Wrapper methods
|
||||
inline uint32_t Hash(Key key) {
|
||||
if (Shape::UsesSeed) {
|
||||
return Shape::SeededHash(key, GetHeap()->HashSeed());
|
||||
} else {
|
||||
return Shape::Hash(key);
|
||||
}
|
||||
}
|
||||
|
||||
inline uint32_t HashForObject(Key key, Object* object) {
|
||||
if (Shape::UsesSeed) {
|
||||
return Shape::SeededHashForObject(key, GetHeap()->HashSeed(), object);
|
||||
} else {
|
||||
return Shape::HashForObject(key, object);
|
||||
}
|
||||
}
|
||||
// Wrapper methods. Defined in src/objects-inl.h
|
||||
// to break a cycle with src/heap/heap.h.
|
||||
inline uint32_t Hash(Key key);
|
||||
inline uint32_t HashForObject(Key key, Object* object);
|
||||
|
||||
// Returns a new HashTable object.
|
||||
MUST_USE_RESULT static Handle<Derived> New(
|
||||
|
Loading…
Reference in New Issue
Block a user