Skip to content

Commit d29e988

Browse files
committed
Update V8 to 33157f3de7
1 parent 7bd372a commit d29e988

File tree

228 files changed

+5857
-4897
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

228 files changed

+5857
-4897
lines changed

deps/v8/.gitattributes

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
# Automatically normalize line endings (to LF) for all text-based files.
2+
* text=auto

deps/v8/BUILD.gn

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1575,6 +1575,8 @@ v8_source_set("v8_base") {
15751575
"src/compiler/common-operator.h",
15761576
"src/compiler/compiler-source-position-table.cc",
15771577
"src/compiler/compiler-source-position-table.h",
1578+
"src/compiler/constant-folding-reducer.cc",
1579+
"src/compiler/constant-folding-reducer.h",
15781580
"src/compiler/control-equivalence.cc",
15791581
"src/compiler/control-equivalence.h",
15801582
"src/compiler/control-flow-optimizer.cc",
@@ -1725,6 +1727,8 @@ v8_source_set("v8_base") {
17251727
"src/compiler/store-store-elimination.h",
17261728
"src/compiler/type-cache.cc",
17271729
"src/compiler/type-cache.h",
1730+
"src/compiler/type-narrowing-reducer.cc",
1731+
"src/compiler/type-narrowing-reducer.h",
17281732
"src/compiler/typed-optimization.cc",
17291733
"src/compiler/typed-optimization.h",
17301734
"src/compiler/typer.cc",
@@ -2065,6 +2069,9 @@ v8_source_set("v8_base") {
20652069
"src/objects/name.h",
20662070
"src/objects/object-macros-undef.h",
20672071
"src/objects/object-macros.h",
2072+
"src/objects/ordered-hash-table-inl.h",
2073+
"src/objects/ordered-hash-table.cc",
2074+
"src/objects/ordered-hash-table.h",
20682075
"src/objects/promise-inl.h",
20692076
"src/objects/promise.h",
20702077
"src/objects/property-descriptor-object-inl.h",
@@ -3042,6 +3049,7 @@ if (current_toolchain == v8_snapshot_toolchain) {
30423049
"src/torque/ast-generator.cc",
30433050
"src/torque/ast-generator.h",
30443051
"src/torque/ast.h",
3052+
"src/torque/declarable.cc",
30453053
"src/torque/declarable.h",
30463054
"src/torque/declaration-visitor.cc",
30473055
"src/torque/declaration-visitor.h",

deps/v8/DEPS

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ vars = {
1212

1313
deps = {
1414
'v8/build':
15-
Var('chromium_url') + '/chromium/src/build.git' + '@' + '506800f4cea285ae0cf22221c8a515890a862694',
15+
Var('chromium_url') + '/chromium/src/build.git' + '@' + '1fd2d08a6f951a6a57ca175c75ca29740003fbf0',
1616
'v8/tools/gyp':
1717
Var('chromium_url') + '/external/gyp.git' + '@' + 'd61a9397e668fa9843c4aa7da9e79460fe590bfb',
1818
'v8/third_party/icu':

deps/v8/include/libplatform/v8-tracing.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -112,6 +112,8 @@ class V8_PLATFORM_EXPORT TraceWriter {
112112
virtual void Flush() = 0;
113113

114114
static TraceWriter* CreateJSONTraceWriter(std::ostream& stream);
115+
static TraceWriter* CreateJSONTraceWriter(std::ostream& stream,
116+
const std::string& tag);
115117

116118
private:
117119
// Disallow copy and assign

deps/v8/include/v8-inspector.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -99,6 +99,7 @@ class V8_EXPORT V8ContextInfo {
9999

100100
class V8_EXPORT V8StackTrace {
101101
public:
102+
virtual StringView firstNonEmptySourceURL() const = 0;
102103
virtual bool isEmpty() const = 0;
103104
virtual StringView topSourceURL() const = 0;
104105
virtual int topLineNumber() const = 0;

deps/v8/infra/testing/PRESUBMIT.py

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -165,16 +165,15 @@ def file_filter(regexp):
165165

166166
# Calculate which files are affected.
167167
if input_api.AffectedFiles(False, file_filter(r'.*PRESUBMIT\.py')):
168-
# If PRESUBMIT.py itself was changed, check all configs.
168+
# If PRESUBMIT.py itself was changed, check also the test spec.
169169
affected_files = [
170-
f for f in os.listdir(input_api.PresubmitLocalPath())
171-
if f.endswith('.pyl')
170+
os.path.join(input_api.PresubmitLocalPath(), 'builders.pyl'),
172171
]
173172
else:
174-
# Otherwise, check only changed configs.
173+
# Otherwise, check test spec only when changed.
175174
affected_files = [
176175
f.AbsoluteLocalPath()
177-
for f in input_api.AffectedFiles(False, file_filter(r'.+\.pyl'))
176+
for f in input_api.AffectedFiles(False, file_filter(r'.*builders\.pyl'))
178177
]
179178

180179
errors = []

deps/v8/infra/testing/README.md

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,10 @@ variants specified [here](https://chromium.googlesource.com/v8/v8/+/master/tools
77
Changes to src-side test specifications go through CQ like any other CL and
88
require tests added for specific trybots to pass.
99

10-
The test specifications are defined in a V8-side folder called infra/testing.
11-
Every master has an optional file named `<mastername>.pyl`. E.g.
12-
`tryserver.v8.pyl`.
10+
The test specifications are defined in a V8-side python-literal file
11+
`infra/testing/builders.pyl`.
1312

14-
The structure of each file is:
13+
The structure of the file is:
1514
```
1615
{
1716
<buildername>: {

deps/v8/infra/testing/tryserver.v8.pyl renamed to deps/v8/infra/testing/builders.pyl

Lines changed: 59 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,10 @@
1-
# Copyright 2017 The V8 project authors. All rights reserved.
1+
# Copyright 2018 The V8 project authors. All rights reserved.
22
# Use of this source code is governed by a BSD-style license that can be
33
# found in the LICENSE file.
44

55
{
6-
### Example configuration for trybots (please keep as reference).
7-
# 'v8_linux64_rel_ng_triggered': {
8-
# 'tests': [
9-
# {'name': 'benchmarks', 'variant': 'default', 'shards': 1},
10-
# ],
11-
# },
12-
6+
##############################################################################
7+
### luci.v8.try
138
##############################################################################
149
# Linux32
1510
'v8_linux_dbg_ng_triggered': {
@@ -257,4 +252,60 @@
257252
{'name': 'v8testing', 'variant': 'extra'},
258253
],
259254
},
255+
##############################################################################
256+
### luci.v8.ci
257+
##############################################################################
258+
# Linux32
259+
'V8 Linux - debug': {
260+
'tests': [
261+
{'name': 'd8testing', 'variant': 'code_serializer', 'shards': 1},
262+
{'name': 'mozilla', 'variant': 'code_serializer', 'shards': 1},
263+
{'name': 'test262_variants', 'variant': 'code_serializer', 'shards': 1},
264+
{'name': 'benchmarks', 'variant': 'code_serializer', 'shards': 1},
265+
],
266+
},
267+
'V8 Linux - gc stress': {
268+
'tests': [
269+
{'name': 'mjsunit', 'variant': 'slow_path', 'shards': 2},
270+
],
271+
},
272+
##############################################################################
273+
# Linux64
274+
'V8 Linux64': {
275+
'tests': [
276+
{'name': 'v8testing', 'variant': 'minor_mc', 'shards': 1},
277+
],
278+
},
279+
'V8 Linux64 - debug': {
280+
'tests': [
281+
{'name': 'v8testing', 'variant': 'minor_mc', 'shards': 1},
282+
{'name': 'v8testing', 'variant': 'slow_path', 'shards': 1},
283+
],
284+
},
285+
'V8 Linux64 - debug - fyi': {
286+
'tests': [
287+
{'name': 'v8testing', 'variant': 'infra_staging', 'shards': 2},
288+
{'name': 'test262_variants', 'variant': 'infra_staging', 'shards': 3},
289+
{'name': 'mjsunit', 'variant': 'stress_sampling', 'shards': 1},
290+
{'name': 'webkit', 'variant': 'stress_sampling', 'shards': 1},
291+
],
292+
},
293+
'V8 Linux64 - fyi': {
294+
'tests': [
295+
{'name': 'v8testing', 'variant': 'infra_staging', 'shards': 1},
296+
{'name': 'test262_variants', 'variant': 'infra_staging', 'shards': 2},
297+
{'name': 'mjsunit', 'variant': 'stress_sampling', 'shards': 1},
298+
{'name': 'webkit', 'variant': 'stress_sampling', 'shards': 1},
299+
],
300+
},
301+
'V8 Linux64 ASAN': {
302+
'tests': [
303+
{'name': 'v8testing', 'variant': 'slow_path', 'shards': 1},
304+
],
305+
},
306+
'V8 Linux64 TSAN': {
307+
'tests': [
308+
{'name': 'v8testing', 'variant': 'slow_path', 'shards': 1},
309+
],
310+
},
260311
}

deps/v8/infra/testing/client.v8.pyl

Lines changed: 0 additions & 68 deletions
This file was deleted.

deps/v8/src/api.cc

Lines changed: 7 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -783,7 +783,7 @@ StartupData SnapshotCreator::CreateBlob(
783783
if (shared->CanFlushCompiled()) {
784784
shared->FlushCompiled();
785785
}
786-
DCHECK(shared->HasCodeObject() || shared->HasBuiltinId() ||
786+
DCHECK(shared->HasWasmExportedFunctionData() || shared->HasBuiltinId() ||
787787
shared->IsApiFunction());
788788
}
789789
}
@@ -5135,10 +5135,12 @@ MaybeLocal<Object> Function::NewInstanceWithSideEffectType(
51355135
i::TimerEventScope<i::TimerEventExecute> timer_scope(isolate);
51365136
auto self = Utils::OpenHandle(this);
51375137
STATIC_ASSERT(sizeof(v8::Local<v8::Value>) == sizeof(i::Object**));
5138-
if (side_effect_type == SideEffectType::kHasNoSideEffect) {
5138+
bool should_set_has_no_side_effect =
5139+
side_effect_type == SideEffectType::kHasNoSideEffect &&
5140+
isolate->debug_execution_mode() == i::DebugInfo::kSideEffects;
5141+
if (should_set_has_no_side_effect) {
51395142
CHECK(self->IsJSFunction() &&
51405143
i::JSFunction::cast(*self)->shared()->IsApiFunction());
5141-
DCHECK(isolate->debug_execution_mode() == i::DebugInfo::kSideEffects);
51425144
i::Object* obj =
51435145
i::JSFunction::cast(*self)->shared()->get_api_func_data()->call_code();
51445146
if (obj->IsCallHandlerInfo()) {
@@ -5152,7 +5154,7 @@ MaybeLocal<Object> Function::NewInstanceWithSideEffectType(
51525154
Local<Object> result;
51535155
has_pending_exception = !ToLocal<Object>(
51545156
i::Execution::New(isolate, self, self, argc, args), &result);
5155-
if (side_effect_type == SideEffectType::kHasNoSideEffect) {
5157+
if (should_set_has_no_side_effect) {
51565158
i::Object* obj =
51575159
i::JSFunction::cast(*self)->shared()->get_api_func_data()->call_code();
51585160
if (obj->IsCallHandlerInfo()) {
@@ -9836,15 +9838,7 @@ Local<String> CpuProfileNode::GetFunctionName() const {
98369838
const i::CodeEntry* entry = node->entry();
98379839
i::Handle<i::String> name =
98389840
isolate->factory()->InternalizeUtf8String(entry->name());
9839-
if (!entry->has_name_prefix()) {
9840-
return ToApiHandle<String>(name);
9841-
} else {
9842-
// We do not expect this to fail. Change this if it does.
9843-
i::Handle<i::String> cons = isolate->factory()->NewConsString(
9844-
isolate->factory()->InternalizeUtf8String(entry->name_prefix()),
9845-
name).ToHandleChecked();
9846-
return ToApiHandle<String>(cons);
9847-
}
9841+
return ToApiHandle<String>(name);
98489842
}
98499843

98509844
int debug::Coverage::BlockData::StartOffset() const { return block_->start; }

0 commit comments

Comments
 (0)