diff options
Diffstat (limited to 'deps/v8/test/mjsunit/regress/wasm/regression-667745.js')
-rw-r--r-- | deps/v8/test/mjsunit/regress/wasm/regression-667745.js | 389 |
1 files changed, 389 insertions, 0 deletions
diff --git a/deps/v8/test/mjsunit/regress/wasm/regression-667745.js b/deps/v8/test/mjsunit/regress/wasm/regression-667745.js new file mode 100644 index 0000000000..68c880303b --- /dev/null +++ b/deps/v8/test/mjsunit/regress/wasm/regression-667745.js @@ -0,0 +1,389 @@ +// Copyright 2016 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"); + +(function() { + var builder = new WasmModuleBuilder(); + builder.addMemory(0, 0, false); + builder.addFunction("test", kSig_i_iii) + .addBody([ +kExprI32Const, 0x0b, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Const, 0x67, +kExprI32Const, 0x07, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Eq, +kExprI32RemU, +kExprI32Clz, +kExprI32Const, 0x25, +kExprI32Const, 0x82, 0x6c, +kExprI32Add, +kExprI32Const, 0x41, +kExprI32Clz, +kExprI32Clz, +kExprI32Const, 0x41, +kExprI32Const, 0x41, +kExprI32Const, 0x70, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Const, 0x70, +kExprI32Clz, +kExprI32Clz, +kExprI32Const, 0x67, +kExprI32Clz, +kExprI32Clz, +kExprI32GeS, +kExprI32Const, 0x67, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Const, 0x41, +kExprDrop, +kExprI32Const, 0x41, +kExprI32Const, 0x41, +kExprI32Clz, +kExprI32Clz, +kExprI32Const, 0x41, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprCallFunction, 0x00, // function #0 +kExprCallFunction, 0x00, // function #0 +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprI32Const, 0x41, +kExprI32Const, 0x41, +kExprI32Const, 0x01, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprSelect, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprI32Const, 0x41, +kExprI32Const, 0x0e, +kExprI32Const, 0x41, +kExprI32Const, 0x41, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Const, 0x41, +kExprI32Const, 0x41, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprCallFunction, 0x00, // function #0 +kExprCallFunction, 0x00, // function #0 +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprI32Const, 0x41, +kExprI32Const, 0x41, +kExprI32Const, 0x01, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprSelect, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprI32Const, 0x41, +kExprI32Const, 0x0e, +kExprI32Const, 0x41, +kExprI32Const, 0x41, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Const, 0x41, +kExprI32Const, 0x41, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprCallFunction, 0x00, // function #0 +kExprCallFunction, 0x00, // function #0 +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprI32Const, 0x41, +kExprI32Const, 0x41, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprI32Const, 0x41, +kExprI32Const, 0x41, +kExprI32Const, 0x01, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprSelect, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprI32Const, 0x41, +kExprI32Const, 0x0e, +kExprI32Const, 0x41, +kExprI32Const, 0x41, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Const, 0x41, +kExprI32Const, 0x41, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprCallFunction, 0x00, // function #0 +kExprCallFunction, 0x00, // function #0 +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprI32Const, 0x41, +kExprI32Const, 0x41, +kExprI32Const, 0x01, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprSelect, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprI32Const, 0x41, +kExprI32Const, 0x0e, +kExprI32Const, 0x41, +kExprI32Const, 0x41, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Const, 0x41, +kExprI32Const, 0x41, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprCallFunction, 0x00, // function #0 +kExprCallFunction, 0x00, // function #0 +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprI32Const, 0x4a, +kExprI32Const, 0x41, +kExprI32LtU, +kExprI32Const, 0x67, +kExprI32Clz, +kExprI32GtS, +kExprI32Const, 0x41, +kExprI32Const, 0x41, +kExprI32Ne, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Const, 0x41, +kExprI32Const, 0x1a, +kExprI32Const, 0x71, +kExprI32And, +kExprI32And, +kExprI32And, +kExprI32And, +kExprI32And, +kExprI32And, +kExprI32And, +kExprI32And, +kExprI32ShrS, +kExprI32Clz, +kExprCallFunction, 0x00, // function #0 +kExprCallFunction, 0x00, // function #0 +kExprI32Clz, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprI32Const, 0x4a, +kExprI32Const, 0x41, +kExprI32LtU, +kExprI32Const, 0x67, +kExprI32Clz, +kExprI32GtS, +kExprI32Const, 0x41, +kExprI32Const, 0x41, +kExprI32Ne, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Const, 0x41, +kExprI32Const, 0x1a, +kExprI32Const, 0x71, +kExprI32And, +kExprI32And, +kExprI32And, +kExprI32And, +kExprI32And, +kExprI32And, +kExprI32And, +kExprI32And, +kExprI32ShrS, +kExprI32Clz, +kExprCallFunction, 0x00, // function #0 +kExprCallFunction, 0x00, // function #0 +kExprI32Clz, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprI32Clz, +kExprUnreachable, +kExprCallFunction, 0x00, // function #0 +kExprCallFunction, 0x00, // function #0 +kExprNop, +kExprNop, +kExprNop, +kExprNop, +kExprReturn + ]) + .exportFunc(); + var module = builder.instantiate(); + assertTrue(module != undefined); +})(); |