Skip to content

Commit 2dbf95d

Browse files
targosaddaleax
authored andcommitted
deps: backport c0f1ff2 from upstream V8
Original commit message: Fix GCC 7 build errors BUG=chromium:691681[email protected] Change-Id: Id7e5698487f16dc217a804f6d3f24da7213c72b9 Reviewed-on: https://chromium-review.googlesource.com/530227 Commit-Queue: Toon Verwaest <[email protected]> Reviewed-by: Toon Verwaest <[email protected]> Cr-Commit-Position: refs/heads/master@{#46045} Refs: #13517Fixes: #10388 Refs: #12392 Backport-PR-URL: #14574 Backport-Reviewed-By: Anna Henningsen <[email protected]> Backport-Reviewed-By: Refael Ackermann <[email protected]> PR-URL: #14004 Reviewed-By: Anna Henningsen <[email protected]> Reviewed-By: Anna Henningsen <[email protected]> Reviewed-By: Franziska Hinkelmann <[email protected]> Reviewed-By: James M Snell <[email protected]> Reviewed-By: Matteo Collina <[email protected]> Reviewed-By: Colin Ihrig <[email protected]>
1 parent efd297a commit 2dbf95d

File tree

6 files changed

+42
-17
lines changed

6 files changed

+42
-17
lines changed

‎deps/v8/BUILD.gn‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1748,6 +1748,7 @@ v8_source_set("v8_base"){
17481748
"src/objects/dictionary.h",
17491749
"src/objects/frame-array-inl.h",
17501750
"src/objects/frame-array.h",
1751+
"src/objects/hash-table-inl.h",
17511752
"src/objects/hash-table.h",
17521753
"src/objects/intl-objects.cc",
17531754
"src/objects/intl-objects.h",

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,7 @@ class FixedBodyDescriptor final : public BodyDescriptorBase{
9999

100100
template <typename StaticVisitor>
101101
staticinlinevoidIterateBody(HeapObject* obj, int object_size){
102-
IterateBody(obj);
102+
IterateBody<StaticVisitor>(obj);
103103
}
104104

105105
staticinlineintSizeOf(Map* map, HeapObject* object){returnkSize}

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

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@
3131
#include"src/lookup-cache-inl.h"
3232
#include"src/lookup.h"
3333
#include"src/objects.h"
34+
#include"src/objects/hash-table-inl.h"
3435
#include"src/objects/literal-objects.h"
3536
#include"src/objects/module-info.h"
3637
#include"src/objects/regexp-match-info.h"
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
// Copyright 2017 the V8 project authors. All rights reserved.
2+
// Use of this source code is governed by a BSD-style license that can be
3+
// found in the LICENSE file.
4+
5+
#ifndef V8_OBJECTS_HASH_TABLE_INL_H_
6+
#defineV8_OBJECTS_HASH_TABLE_INL_H_
7+
8+
#include"src/objects/hash-table.h"
9+
10+
namespacev8{
11+
namespaceinternal{
12+
13+
template <typename Derived, typename Shape, typename Key>
14+
uint32_t HashTable<Derived, Shape, Key>::Hash(Key key){
15+
if (Shape::UsesSeed){
16+
returnShape::SeededHash(key, GetHeap()->HashSeed());
17+
} else{
18+
returnShape::Hash(key);
19+
}
20+
}
21+
22+
template <typename Derived, typename Shape, typename Key>
23+
uint32_t HashTable<Derived, Shape, Key>::HashForObject(Key key, Object* object){
24+
if (Shape::UsesSeed){
25+
returnShape::SeededHashForObject(key, GetHeap()->HashSeed(), object);
26+
} else{
27+
returnShape::HashForObject(key, object);
28+
}
29+
}
30+
31+
} // namespace internal
32+
} // namespace v8
33+
34+
#endif// V8_OBJECTS_HASH_TABLE_INL_H_

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

Lines changed: 4 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -138,22 +138,10 @@ class HashTable : public HashTableBase{
138138
public:
139139
typedef Shape ShapeT;
140140

141-
// Wrapper methods
142-
inlineuint32_tHash(Key key){
143-
if (Shape::UsesSeed){
144-
returnShape::SeededHash(key, GetHeap()->HashSeed());
145-
} else{
146-
returnShape::Hash(key);
147-
}
148-
}
149-
150-
inlineuint32_tHashForObject(Key key, Object* object){
151-
if (Shape::UsesSeed){
152-
returnShape::SeededHashForObject(key, GetHeap()->HashSeed(), object);
153-
} else{
154-
returnShape::HashForObject(key, object);
155-
}
156-
}
141+
// Wrapper methods. Defined in src/objects/hash-table-inl.h
142+
// to break a cycle with src/heap/heap.h
143+
inlineuint32_tHash(Key key);
144+
inlineuint32_tHashForObject(Key key, Object* object);
157145

158146
// Returns a new HashTable object.
159147
MUST_USE_RESULT static Handle<Derived> New(

‎deps/v8/src/v8.gyp‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1228,6 +1228,7 @@
12281228
'objects/dictionary.h',
12291229
'objects/frame-array.h',
12301230
'objects/frame-array-inl.h',
1231+
'objects/hash-table-inl.h',
12311232
'objects/hash-table.h',
12321233
'objects/intl-objects.cc',
12331234
'objects/intl-objects.h',

0 commit comments

Comments
(0)