Skip to content
This repository was archived by the owner on Dec 4, 2023. It is now read-only.

Commit e442d53

Browse files
committed
Bump upstream libv8 to 5.9.211.38 and update patchset
1 parent e1ac67a commit e442d53

8 files changed

Lines changed: 185 additions & 42 deletions

lib/libv8/version.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
module Libv8
2-
VERSION = "5.7.492.65.1"
2+
VERSION = "5.9.211.38.0beta0"
33
end

libv8.gemspec

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ Gem::Specification.new do |s|
2626
s.extensions = ["ext/libv8/extconf.rb"]
2727
s.require_paths = ["lib", "ext"]
2828

29-
s.add_development_dependency 'rake', '~> 11'
29+
s.add_development_dependency 'rake', '~> 12'
3030
s.add_development_dependency 'rake-compiler', '~> 0'
3131
s.add_development_dependency 'rspec', '~> 3'
3232
end
Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
1-
From 66dd2280b3ecbb4a09f4f262d52a3a99a97afd45 Mon Sep 17 00:00:00 2001
1+
From 0bf02c0c573c22962065c5eb1a86e48f64a8ef24 Mon Sep 17 00:00:00 2001
22
From: Petko Bordjukov <bordjukov@gmail.com>
33
Date: Mon, 25 Jul 2016 00:00:19 +0300
4-
Subject: [PATCH 1/4] Build a standalone static library
4+
Subject: [PATCH 1/5] Build a standalone static library
55

66
---
77
gypfiles/standalone.gypi | 3 +++
88
1 file changed, 3 insertions(+)
99

1010
diff --git a/gypfiles/standalone.gypi b/gypfiles/standalone.gypi
11-
index d438a5aeab..f28c9bfa9f 100644
11+
index 986aaaaebb..9006c2c2f5 100644
1212
--- a/gypfiles/standalone.gypi
1313
+++ b/gypfiles/standalone.gypi
14-
@@ -538,6 +538,9 @@
14+
@@ -522,6 +522,9 @@
1515
}], # fastbuild!=0
1616
],
1717
'target_conditions': [
@@ -22,5 +22,5 @@ index d438a5aeab..f28c9bfa9f 100644
2222
'defines!': [
2323
'DEBUG',
2424
--
25-
2.12.1
25+
2.13.3
2626

Lines changed: 20 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,18 @@
1-
From 73b9ff314b5027e9bd1410130df607dbd7f40aa4 Mon Sep 17 00:00:00 2001
1+
From 3332a98da84d9ad9ec918feedb0aefc0bfceed52 Mon Sep 17 00:00:00 2001
22
From: Petko Bordjukov <bordjukov@gmail.com>
33
Date: Tue, 28 Feb 2017 00:04:26 +0200
4-
Subject: [PATCH 2/4] Don't compile unnecessary stuff
4+
Subject: [PATCH 2/5] Don't compile unnecessary stuff
55

66
---
77
Makefile | 7 +------
8-
gypfiles/all.gyp | 43 +------------------------------------------
9-
2 files changed, 2 insertions(+), 48 deletions(-)
8+
gypfiles/all.gyp | 32 --------------------------------
9+
2 files changed, 1 insertion(+), 38 deletions(-)
1010

1111
diff --git a/Makefile b/Makefile
12-
index 6eeac09a14..a2807ffafe 100644
12+
index 299d4aa09c..16d8d2dd11 100644
1313
--- a/Makefile
1414
+++ b/Makefile
15-
@@ -266,12 +266,7 @@ GYPFILES = third_party/icu/icu.gypi third_party/icu/icu.gyp \
15+
@@ -270,12 +270,7 @@ GYPFILES = third_party/icu/icu.gypi third_party/icu/icu.gyp \
1616
gypfiles/shim_headers.gypi gypfiles/features.gypi \
1717
gypfiles/standalone.gypi \
1818
gypfiles/toolchain.gypi gypfiles/all.gyp gypfiles/mac/asan.gyp \
@@ -22,19 +22,26 @@ index 6eeac09a14..a2807ffafe 100644
2222
- buildtools/third_party/libc++abi/libc++abi.gyp \
2323
- buildtools/third_party/libc++/libc++.gyp samples/samples.gyp \
2424
- src/third_party/vtune/v8vtune.gyp src/d8.gyp
25-
+ src/v8.gyp tools/parser-shell.gyp src/d8.gyp
25+
+ src/v8.gyp tools/parser-shell.gyp src/d8.gyp
2626

2727
# If vtunejit=on, the v8vtune.gyp will be appended.
2828
ifeq ($(vtunejit), on)
2929
diff --git a/gypfiles/all.gyp b/gypfiles/all.gyp
30-
index 12e1fdadb7..9b02b4d305 100644
30+
index bbad66741c..96820a0ecc 100644
3131
--- a/gypfiles/all.gyp
3232
+++ b/gypfiles/all.gyp
33-
@@ -15,48 +15,7 @@
34-
'dependencies': [
33+
@@ -9,7 +9,6 @@
34+
'type': 'none',
35+
'dependencies': [
36+
'../src/d8.gyp:d8',
37+
- '../test/inspector/inspector.gyp:*',
38+
],
39+
'conditions': [
40+
['component!="shared_library"', {
41+
@@ -17,37 +16,6 @@
3542
'../tools/parser-shell.gyp:parser-shell',
3643
],
37-
- }],
44+
}],
3845
- # These items don't compile for Android on Mac.
3946
- ['host_os!="mac" or OS!="android"', {
4047
- 'dependencies': [
@@ -44,20 +51,11 @@ index 12e1fdadb7..9b02b4d305 100644
4451
- '../test/unittests/unittests.gyp:*',
4552
- ],
4653
- }],
47-
- ['v8_enable_inspector==1', {
48-
- 'dependencies': [
49-
- '../test/inspector/inspector.gyp:*',
50-
- ],
51-
- }],
52-
- ['v8_enable_inspector==1 and test_isolation_mode != "noop"', {
53-
- 'dependencies': [
54-
- '../test/debugger/debugger.gyp:*',
55-
- ],
56-
- }],
5754
- ['test_isolation_mode != "noop"', {
5855
- 'dependencies': [
5956
- '../test/bot_default.gyp:*',
6057
- '../test/benchmarks/benchmarks.gyp:*',
58+
- '../test/debugger/debugger.gyp:*',
6159
- '../test/default.gyp:*',
6260
- '../test/intl/intl.gyp:*',
6361
- '../test/message/message.gyp:*',
@@ -66,7 +64,6 @@ index 12e1fdadb7..9b02b4d305 100644
6664
- '../test/optimize_for_size.gyp:*',
6765
- '../test/perf.gyp:*',
6866
- '../test/preparser/preparser.gyp:*',
69-
- '../test/simdjs/simdjs.gyp:*',
7067
- '../test/test262/test262.gyp:*',
7168
- '../test/webkit/webkit.gyp:*',
7269
- '../tools/check-static-initializers.gyp:*',
@@ -76,10 +73,9 @@ index 12e1fdadb7..9b02b4d305 100644
7673
- '../tools/run-valgrind.gyp:*',
7774
- ],
7875
- }],
79-
+ }]
8076
]
8177
}
8278
]
8379
--
84-
2.12.1
80+
2.13.3
8581

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,17 @@
1-
From f40d71bda11b9de95ba732e455832517d1e3b9d6 Mon Sep 17 00:00:00 2001
1+
From b2ba4c09507d83ccd7ff9e95abf5087b30445430 Mon Sep 17 00:00:00 2001
22
From: Petko Bordjukov <bordjukov@gmail.com>
33
Date: Mon, 25 Jul 2016 00:05:47 +0300
4-
Subject: [PATCH 3/4] Use the -fPIC flag for the static library
4+
Subject: [PATCH 3/5] Use the -fPIC flag for the static library
55

66
---
77
gypfiles/standalone.gypi | 2 +-
88
1 file changed, 1 insertion(+), 1 deletion(-)
99

1010
diff --git a/gypfiles/standalone.gypi b/gypfiles/standalone.gypi
11-
index f28c9bfa9f..01e4dc9336 100644
11+
index 9006c2c2f5..08eb0761c9 100644
1212
--- a/gypfiles/standalone.gypi
1313
+++ b/gypfiles/standalone.gypi
14-
@@ -810,7 +810,7 @@
14+
@@ -794,7 +794,7 @@
1515
[ 'visibility=="hidden" and v8_enable_backtrace==0', {
1616
'cflags': [ '-fvisibility=hidden' ],
1717
}],
@@ -21,5 +21,5 @@ index f28c9bfa9f..01e4dc9336 100644
2121
}],
2222
[ 'clang==0 and coverage==1', {
2323
--
24-
2.12.1
24+
2.13.3
2525

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,18 @@
1-
From 3084588d43a95001266fdc77a6c6ed3ce9747937 Mon Sep 17 00:00:00 2001
1+
From b5adedd20f6868d229ac524b170fcabc8c44c2db Mon Sep 17 00:00:00 2001
22
From: Jb Aviat <jb@sqreen.io>
33
Date: Mon, 27 Feb 2017 11:14:42 +0200
4-
Subject: [PATCH 4/4] Do not embed debug symbols in macOS libraries
4+
Subject: [PATCH 4/5] Do not embed debug symbols in macOS libraries
55

66
This lowers dramatically the produced binary size
77
---
88
gypfiles/standalone.gypi | 1 +
99
1 file changed, 1 insertion(+)
1010

1111
diff --git a/gypfiles/standalone.gypi b/gypfiles/standalone.gypi
12-
index 01e4dc9336..027eaff718 100644
12+
index 08eb0761c9..453e9efed9 100644
1313
--- a/gypfiles/standalone.gypi
1414
+++ b/gypfiles/standalone.gypi
15-
@@ -1069,6 +1069,7 @@
15+
@@ -1054,6 +1054,7 @@
1616
'GCC_ENABLE_CPP_EXCEPTIONS': 'NO', # -fno-exceptions
1717
'GCC_ENABLE_CPP_RTTI': 'NO', # -fno-rtti
1818
'GCC_ENABLE_PASCAL_STRINGS': 'NO', # No -mpascal-strings
@@ -21,5 +21,5 @@ index 01e4dc9336..027eaff718 100644
2121
'GCC_INLINES_ARE_PRIVATE_EXTERN': 'YES',
2222
'GCC_SYMBOLS_PRIVATE_EXTERN': 'YES', # -fvisibility=hidden
2323
--
24-
2.12.1
24+
2.13.3
2525

Lines changed: 147 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,147 @@
1+
From 116d78a457473837092190b2a9187b660813258d Mon Sep 17 00:00:00 2001
2+
From: =?UTF-8?q?Micha=C3=ABl=20Zasso?= <mic.besace@gmail.com>
3+
Date: Tue, 20 Jun 2017 13:14:38 +0200
4+
Subject: [PATCH 5/5] Fix GCC 7 build errors
5+
6+
BUG=chromium:691681
7+
R=franzih@chromium.org
8+
9+
Change-Id: Id7e5698487f16dc217a804f6d3f24da7213c72b9
10+
Reviewed-on: https://chromium-review.googlesource.com/530227
11+
Commit-Queue: Toon Verwaest <verwaest@chromium.org>
12+
Reviewed-by: Toon Verwaest <verwaest@chromium.org>
13+
Cr-Commit-Position: refs/heads/master@{#46045}
14+
---
15+
BUILD.gn | 1 +
16+
src/objects-body-descriptors.h | 2 +-
17+
src/objects-inl.h | 2 ++
18+
src/objects/hash-table-inl.h | 34 ++++++++++++++++++++++++++++++++++
19+
src/objects/hash-table.h | 20 ++++----------------
20+
src/v8.gyp | 1 +
21+
6 files changed, 43 insertions(+), 17 deletions(-)
22+
create mode 100644 src/objects/hash-table-inl.h
23+
24+
diff --git a/BUILD.gn b/BUILD.gn
25+
index 80ff7340b1..becf4177c1 100644
26+
--- a/BUILD.gn
27+
+++ b/BUILD.gn
28+
@@ -1717,6 +1717,7 @@ v8_source_set("v8_base") {
29+
"src/objects/dictionary.h",
30+
"src/objects/frame-array-inl.h",
31+
"src/objects/frame-array.h",
32+
+ "src/objects/hash-table-inl.h",
33+
"src/objects/hash-table.h",
34+
"src/objects/literal-objects.cc",
35+
"src/objects/literal-objects.h",
36+
diff --git a/src/objects-body-descriptors.h b/src/objects-body-descriptors.h
37+
index 9f080eb755..b201c20fbb 100644
38+
--- a/src/objects-body-descriptors.h
39+
+++ b/src/objects-body-descriptors.h
40+
@@ -99,7 +99,7 @@ class FixedBodyDescriptor final : public BodyDescriptorBase {
41+
42+
template <typename StaticVisitor>
43+
static inline void IterateBody(HeapObject* obj, int object_size) {
44+
- IterateBody(obj);
45+
+ IterateBody<StaticVisitor>(obj);
46+
}
47+
};
48+
49+
diff --git a/src/objects-inl.h b/src/objects-inl.h
50+
index 4b819d43f4..07b62cc140 100644
51+
--- a/src/objects-inl.h
52+
+++ b/src/objects-inl.h
53+
@@ -31,6 +31,8 @@
54+
#include "src/lookup-cache-inl.h"
55+
#include "src/lookup.h"
56+
#include "src/objects.h"
57+
+#include "src/objects/hash-table-inl.h"
58+
+#include "src/objects/hash-table.h"
59+
#include "src/objects/literal-objects.h"
60+
#include "src/objects/module-info.h"
61+
#include "src/objects/regexp-match-info.h"
62+
diff --git a/src/objects/hash-table-inl.h b/src/objects/hash-table-inl.h
63+
new file mode 100644
64+
index 0000000000..7b2db38495
65+
--- /dev/null
66+
+++ b/src/objects/hash-table-inl.h
67+
@@ -0,0 +1,34 @@
68+
+// Copyright 2017 the V8 project authors. All rights reserved.
69+
+// Use of this source code is governed by a BSD-style license that can be
70+
+// found in the LICENSE file.
71+
+
72+
+#ifndef V8_OBJECTS_HASH_TABLE_INL_H_
73+
+#define V8_OBJECTS_HASH_TABLE_INL_H_
74+
+
75+
+#include "src/objects/hash-table.h"
76+
+
77+
+namespace v8 {
78+
+namespace internal {
79+
+
80+
+template <typename Derived, typename Shape, typename Key>
81+
+uint32_t HashTable<Derived, Shape, Key>::Hash(Key key) {
82+
+ if (Shape::UsesSeed) {
83+
+ return Shape::SeededHash(key, GetHeap()->HashSeed());
84+
+ } else {
85+
+ return Shape::Hash(key);
86+
+ }
87+
+}
88+
+
89+
+template <typename Derived, typename Shape, typename Key>
90+
+uint32_t HashTable<Derived, Shape, Key>::HashForObject(Key key, Object* object) {
91+
+ if (Shape::UsesSeed) {
92+
+ return Shape::SeededHashForObject(key, GetHeap()->HashSeed(), object);
93+
+ } else {
94+
+ return Shape::HashForObject(key, object);
95+
+ }
96+
+}
97+
+
98+
+} // namespace internal
99+
+} // namespace v8
100+
+
101+
+#endif // V8_OBJECTS_HASH_TABLE_INL_H_
102+
diff --git a/src/objects/hash-table.h b/src/objects/hash-table.h
103+
index 221598b711..3a351e3e16 100644
104+
--- a/src/objects/hash-table.h
105+
+++ b/src/objects/hash-table.h
106+
@@ -135,22 +135,10 @@ class HashTable : public HashTableBase {
107+
public:
108+
typedef Shape ShapeT;
109+
110+
- // Wrapper methods
111+
- inline uint32_t Hash(Key key) {
112+
- if (Shape::UsesSeed) {
113+
- return Shape::SeededHash(key, GetHeap()->HashSeed());
114+
- } else {
115+
- return Shape::Hash(key);
116+
- }
117+
- }
118+
-
119+
- inline uint32_t HashForObject(Key key, Object* object) {
120+
- if (Shape::UsesSeed) {
121+
- return Shape::SeededHashForObject(key, GetHeap()->HashSeed(), object);
122+
- } else {
123+
- return Shape::HashForObject(key, object);
124+
- }
125+
- }
126+
+ // Wrapper methods. Defined in src/objects/hash-table-inl.h
127+
+ // to break a cycle with src/heap/heap.h.
128+
+ inline uint32_t Hash(Key key);
129+
+ inline uint32_t HashForObject(Key key, Object* object);
130+
131+
// Returns a new HashTable object.
132+
MUST_USE_RESULT static Handle<Derived> New(
133+
diff --git a/src/v8.gyp b/src/v8.gyp
134+
index 1f94a0680a..a8efcdcf3f 100644
135+
--- a/src/v8.gyp
136+
+++ b/src/v8.gyp
137+
@@ -1118,6 +1118,7 @@
138+
'objects/dictionary.h',
139+
'objects/frame-array.h',
140+
'objects/frame-array-inl.h',
141+
+ 'objects/hash-table-inl.h',
142+
'objects/hash-table.h',
143+
'objects/literal-objects.cc',
144+
'objects/literal-objects.h',
145+
--
146+
2.13.3
147+

vendor/depot_tools

Submodule depot_tools updated from af0fd4e to cfbb775

0 commit comments

Comments
 (0)