diff options
Diffstat (limited to 'deps/v8/test/debugger/debug/wasm/debug-enabled-tier-down-wasm-unsupported-liftoff.js')
-rw-r--r-- | deps/v8/test/debugger/debug/wasm/debug-enabled-tier-down-wasm-unsupported-liftoff.js | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/deps/v8/test/debugger/debug/wasm/debug-enabled-tier-down-wasm-unsupported-liftoff.js b/deps/v8/test/debugger/debug/wasm/debug-enabled-tier-down-wasm-unsupported-liftoff.js new file mode 100644 index 0000000000..e7ba10349c --- /dev/null +++ b/deps/v8/test/debugger/debug/wasm/debug-enabled-tier-down-wasm-unsupported-liftoff.js @@ -0,0 +1,42 @@ +// Copyright 2020 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: --experimental-wasm-anyref + +load("test/mjsunit/wasm/wasm-module-builder.js"); + +// Create a simple Wasm module. +function create_builder(i) { + const builder = new WasmModuleBuilder(); + builder.addFunction('main', kSig_i_r) + .addBody([ + kExprLocalGet, 0, kExprRefIsNull, + ...wasmI32Const(i), + kExprI32Add]) + .exportFunc(); + return builder; +} + +const instance = create_builder(0).instantiate(); + +// Test recompilation. +const Debug = new DebugWrapper(); +Debug.enable(); +assertFalse(%IsLiftoffFunction(instance.exports.main)); +const newInstance = create_builder(1).instantiate(); +assertFalse(%IsLiftoffFunction(newInstance.exports.main)); + +// Async. +async function testTierDownToLiftoffAsync() { + Debug.disable(); + const asyncInstance = await create_builder(2).asyncInstantiate(); + + // Test recompilation. + Debug.enable(); + assertFalse(%IsLiftoffFunction(asyncInstance.exports.main)); + const newAsyncInstance = await create_builder(3).asyncInstantiate(); + assertFalse(%IsLiftoffFunction(newAsyncInstance.exports.main)); +} + +assertPromiseResult(testTierDownToLiftoffAsync()); |