Skip to content

Commit 97c0880

Browse files
targosMylesBorins
authored andcommitted
deps: update V8 to 6.1.534.42
Refs: v8/v8@6.1.534.38...6.1.534.42 PR-URL: #15521 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Colin Ihrig <cjihrig@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Myles Borins <myles.borins@gmail.com> Reviewed-By: Ali Ijaz Sheikh <ofrobots@google.com> Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
1 parent 1ed0c77 commit 97c0880

File tree

7 files changed

+73
-8
lines changed

7 files changed

+73
-8
lines changed

deps/v8/include/v8-version.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
#define V8_MAJOR_VERSION 6
1212
#define V8_MINOR_VERSION 1
1313
#define V8_BUILD_NUMBER 534
14-
#define V8_PATCH_LEVEL 38
14+
#define V8_PATCH_LEVEL 42
1515

1616
// Use 1 for candidates and 0 otherwise.
1717
// (Boolean macro values are not supported by all preprocessors.)

deps/v8/src/assembler.cc

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -340,11 +340,7 @@ void RelocInfo::update_wasm_function_table_size_reference(
340340
Isolate* isolate, uint32_t old_size, uint32_t new_size,
341341
ICacheFlushMode icache_flush_mode) {
342342
DCHECK(IsWasmFunctionTableSizeReference(rmode_));
343-
uint32_t current_size_reference = wasm_function_table_size_reference();
344-
uint32_t updated_size_reference =
345-
new_size + (current_size_reference - old_size);
346-
unchecked_update_wasm_size(isolate, updated_size_reference,
347-
icache_flush_mode);
343+
unchecked_update_wasm_size(isolate, new_size, icache_flush_mode);
348344
}
349345

350346
void RelocInfo::set_target_address(Isolate* isolate, Address target,

deps/v8/src/compiler/typer.cc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1450,7 +1450,7 @@ Type* Typer::Visitor::JSCallTyper(Type* fun, Typer* t) {
14501450
return Type::String();
14511451
case kStringIndexOf:
14521452
case kStringLastIndexOf:
1453-
return Type::Range(-1.0, String::kMaxLength - 1.0, t->zone());
1453+
return Type::Range(-1.0, String::kMaxLength, t->zone());
14541454
case kStringEndsWith:
14551455
case kStringIncludes:
14561456
return Type::Boolean();

deps/v8/src/flag-definitions.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -465,7 +465,7 @@ DEFINE_BOOL(turbo_loop_peeling, true, "Turbofan loop peeling")
465465
DEFINE_BOOL(turbo_loop_variable, true, "Turbofan loop variable optimization")
466466
DEFINE_BOOL(turbo_cf_optimization, true, "optimize control flow in TurboFan")
467467
DEFINE_BOOL(turbo_frame_elision, true, "elide frames in TurboFan")
468-
DEFINE_BOOL(turbo_escape, true, "enable escape analysis")
468+
DEFINE_BOOL(turbo_escape, false, "enable escape analysis")
469469
DEFINE_BOOL(turbo_instruction_scheduling, false,
470470
"enable instruction scheduling in TurboFan")
471471
DEFINE_BOOL(turbo_stress_instruction_scheduling, false,
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
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+
// Flags: --allow-natives-syntax
6+
7+
const maxLength = 268435440;
8+
const s = 'A'.repeat(maxLength);
9+
10+
function foo(s) {
11+
let x = s.indexOf("", maxLength);
12+
return x === maxLength;
13+
}
14+
15+
assertTrue(foo(s));
16+
assertTrue(foo(s));
17+
%OptimizeFunctionOnNextCall(foo);
18+
assertTrue(foo(s));
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
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+
// Flags: --allow-natives-syntax
6+
7+
const maxLength = 268435440;
8+
const s = 'A'.repeat(maxLength);
9+
10+
function foo(s) {
11+
let x = s.lastIndexOf("", maxLength);
12+
return x === maxLength;
13+
}
14+
15+
assertTrue(foo(s));
16+
assertTrue(foo(s));
17+
%OptimizeFunctionOnNextCall(foo);
18+
assertTrue(foo(s));
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
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+
// Flags: --expose-wasm
6+
7+
'use strict';
8+
9+
load("test/mjsunit/wasm/wasm-constants.js");
10+
load("test/mjsunit/wasm/wasm-module-builder.js");
11+
12+
var builder = new WasmModuleBuilder();
13+
builder.addImportedTable("x", "table", 1, 10000000);
14+
builder.addFunction("main", kSig_i_i)
15+
.addBody([
16+
kExprI32Const, 0,
17+
kExprGetLocal, 0,
18+
kExprCallIndirect, 0, kTableZero])
19+
.exportAs("main");
20+
let module = new WebAssembly.Module(builder.toBuffer());
21+
let table = new WebAssembly.Table({element: "anyfunc",
22+
initial: 1, maximum:1000000});
23+
let instance = new WebAssembly.Instance(module, {x: {table:table}});
24+
25+
table.grow(0x40001);
26+
27+
let instance2 = new WebAssembly.Instance(module, {x: {table:table}});
28+
29+
try {
30+
instance2.exports.main(402982); // should be OOB
31+
} catch (e) {
32+
print("Correctly caught: ", e);
33+
}

0 commit comments

Comments
 (0)