v8/test/mjsunit/regress/wasm/regress-810973.js
Ben L. Titzer ca894e093a [wasm] Nerf regression test size
This verifies that asm.js over the internal parameter count limit
does not crash. The internal limit is 1000 parameters, and the test
was using >3000 parameters. Reduce this down to 1005, and also
introduce a test which does not dynamically construct the string
and eval it, because the construction of this string takes time.
Mark the old test as slow in debug mode.

R=machenbach@chromium.org
BUG=v8:8165

Change-Id: Ib6ef5e1e58d3f37a71720fb59afa19464e7f2ff7
Reviewed-on: https://chromium-review.googlesource.com/1224057
Commit-Queue: Ben Titzer <titzer@chromium.org>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#55860}
2018-09-13 12:46:20 +00:00

34 lines
846 B
JavaScript

// Copyright 2018 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.
this.WScript = new Proxy({}, {
get() {
switch (name) {
}
}
});
function MjsUnitAssertionError() {
};
let __v_692 = `(function module() { "use asm";function foo(`;
const __v_693 =
1005;
for (let __v_695 = 0; __v_695 < __v_693; ++__v_695) {
__v_692 += `arg${__v_695},`;
}
try {
__v_692 += `arg${__v_693}){`;
} catch (e) {}
for (let __v_696 = 0; __v_696 <= __v_693; ++__v_696) {
__v_692 += `arg${__v_696}=+arg${__v_696};`;
}
__v_692 += "return 10;}function bar(){return foo(";
for (let __v_697 = 0; __v_697 < __v_693; ++__v_697) {
__v_692 += "0.0,";
}
__v_692 += "1.0)|0;}";
__v_692 += "return bar})()()";
const __v_694 = eval(__v_692);