v8/test/mjsunit/wasm/unreachable.js
clemensh b1434ac460 [wasm] Throw real Error on wasm trap
Before, just a string was thrown, so no stack trace was attached there.
Generated code from wasm does not grow by this change, we just pass a
message id to the respective (new) runtime function.

R=mstarzinger@chromium.org, titzer@chromium.org
BUG=

Review URL: https://codereview.chromium.org/1874383002

Cr-Commit-Position: refs/heads/master@{#35664}
2016-04-20 14:53:28 +00:00

27 lines
681 B
JavaScript

// Copyright 2015 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 main = (function () {
var builder = new WasmModuleBuilder();
builder.addFunction("main", [kAstStmt])
.addBody([kExprUnreachable])
.exportAs("main");
return builder.instantiate().exports.main;
})();
var exception = "";
try {
assertEquals(0, main());
} catch(e) {
print("correctly caught: " + e);
exception = e;
}
assertEquals("unreachable", exception.message);