summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/wasm/regress/ion-many-results.js
blob: bc4df59e200e1d70bac44b63d5515a85134c82c6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
// This provokes a crash in ion if its tempalloc reservation logic is not
// up to snuff, bug 1675844.

for ( let i=100; i < 300; i++ ) {
    let xs = new Array(i).fill(1);

    // Should not crash the compiler but should fail validation
    assertErrorMessage(() => new WebAssembly.Module(wasmTextToBinary(`
(module
  (func $f (result ${xs.map(_ => 'i32 ').join(' ')})
    ${xs.map((_) => '(i32.const 1)').join(' ')})
  (func $g
    (call $f)))`)),
                       WebAssembly.CompileError,
                       /(unused values not explicitly dropped)|(values remaining on stack)/);

}