fc27711780
Fix WebAssembly's table/grow js-api. The argument is a unsigned long, this change refactors most of arithmetic and bounds checks type from int64 to uint32_t, according to the spec. Bug: v8:8319 Cq-Include-Trybots: luci.chromium.try:linux-blink-rel Change-Id: Ia29121c930d7fb930668e54a5a769dae25234f2c Reviewed-on: https://chromium-review.googlesource.com/c/1351006 Commit-Queue: Sven Sauleau <ssauleau@igalia.com> Reviewed-by: Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#58936}
18 lines
649 B
JavaScript
18 lines
649 B
JavaScript
// 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.
|
|
|
|
// Flags: --expose-wasm
|
|
|
|
load("test/mjsunit/wasm/wasm-constants.js");
|
|
load("test/mjsunit/wasm/wasm-module-builder.js");
|
|
|
|
var builder = new WasmModuleBuilder();
|
|
builder.addImportedTable("x", "table", 1, 10000000);
|
|
let module = new WebAssembly.Module(builder.toBuffer());
|
|
let table = new WebAssembly.Table({element: "anyfunc",
|
|
initial: 1, maximum:1000000});
|
|
let instance = new WebAssembly.Instance(module, {x: {table:table}});
|
|
|
|
assertThrows(() => table.grow(Infinity), TypeError);
|