| // Copyright 2017 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: --allow-natives-syntax --expose-gc |
| |
| function Module(stdlib, env, heap) { |
| "use asm"; |
| var MEM = new stdlib.Int32Array(heap); |
| function f() { |
| MEM[0] = 0; |
| } |
| return { f: f }; |
| } |
| function instantiate() { |
| var buffer = new ArrayBuffer(4096); |
| Module(this, {}, buffer).f(); |
| try {} finally {} |
| gc(); |
| Module(this, {}, buffer).f(); |
| } |
| instantiate(); |
| assertTrue(%IsAsmWasmCode(Module)); |