Browse Source

deps: backport c0f1ff2 from upstream V8

Original commit message:

    Fix GCC 7 build errors

    BUG=chromium:691681
    R=franzih@chromium.org

    Change-Id: Id7e5698487f16dc217a804f6d3f24da7213c72b9
    Reviewed-on: https://chromium-review.googlesource.com/530227
    Commit-Queue: Toon Verwaest <verwaest@chromium.org>
    Reviewed-by: Toon Verwaest <verwaest@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#46045}

Refs: https://github.com/nodejs/node/pull/13517
Fixes: https://github.com/nodejs/node/issues/10388
Refs: https://github.com/nodejs/node/pull/12392

PR-URL: https://github.com/nodejs/node/pull/14004
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Franziska Hinkelmann <franziska.hinkelmann@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Matteo Collina <matteo.collina@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
v6
Michaël Zasso 8 years ago
committed by Myles Borins
parent
commit
5651a6f65b
No known key found for this signature in database GPG Key ID: 933B01F40B5CA946
  1. 1
      deps/v8/BUILD.gn
  2. 2
      deps/v8/src/objects-body-descriptors.h
  3. 1
      deps/v8/src/objects-inl.h
  4. 34
      deps/v8/src/objects/hash-table-inl.h
  5. 20
      deps/v8/src/objects/hash-table.h
  6. 1
      deps/v8/src/v8.gyp

1
deps/v8/BUILD.gn

@ -1748,6 +1748,7 @@ v8_source_set("v8_base") {
"src/objects/dictionary.h",
"src/objects/frame-array-inl.h",
"src/objects/frame-array.h",
"src/objects/hash-table-inl.h",
"src/objects/hash-table.h",
"src/objects/intl-objects.cc",
"src/objects/intl-objects.h",

2
deps/v8/src/objects-body-descriptors.h

@ -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);
}
static inline int SizeOf(Map* map, HeapObject* object) { return kSize; }

1
deps/v8/src/objects-inl.h

@ -31,6 +31,7 @@
#include "src/lookup-cache-inl.h"
#include "src/lookup.h"
#include "src/objects.h"
#include "src/objects/hash-table-inl.h"
#include "src/objects/literal-objects.h"
#include "src/objects/module-info.h"
#include "src/objects/regexp-match-info.h"

34
deps/v8/src/objects/hash-table-inl.h

@ -0,0 +1,34 @@
// Copyright 2017 the V8 project authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef V8_OBJECTS_HASH_TABLE_INL_H_
#define V8_OBJECTS_HASH_TABLE_INL_H_
#include "src/objects/hash-table.h"
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);
}
}
} // namespace internal
} // namespace v8
#endif // V8_OBJECTS_HASH_TABLE_INL_H_

20
deps/v8/src/objects/hash-table.h

@ -138,22 +138,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/hash-table-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(

1
deps/v8/src/v8.gyp

@ -1228,6 +1228,7 @@
'objects/dictionary.h',
'objects/frame-array.h',
'objects/frame-array-inl.h',
'objects/hash-table-inl.h',
'objects/hash-table.h',
'objects/intl-objects.cc',
'objects/intl-objects.h',

Loading…
Cancel
Save