OLD | NEW |
1 // Copyright 2016 the V8 project authors. All rights reserved. | 1 // Copyright 2016 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 // Flags: --expose-wasm | 5 // Flags: --expose-wasm |
6 | 6 |
7 // Ensure checked in wasm binaries used by integration tests from v8 hosts | 7 // Ensure checked in wasm binaries used by integration tests from v8 hosts |
8 // (such as chromium) are up to date. | 8 // (such as chromium) are up to date. |
9 | 9 |
| 10 (function print_incrementer() { |
| 11 if (true) return; // remove to regenerate the module |
| 12 |
| 13 load('test/mjsunit/wasm/wasm-constants.js'); |
| 14 load('test/mjsunit/wasm/wasm-module-builder.js'); |
| 15 |
| 16 var module = new WasmModuleBuilder(); |
| 17 module.addFunction(undefined, kSig_i_i) |
| 18 .addBody([kExprGetLocal, 0, kExprI32Const, 1, kExprI32Add]) |
| 19 .exportAs("increment"); |
| 20 |
| 21 var buffer = module.toBuffer(true); |
| 22 var view = new Uint8Array(buffer); |
| 23 |
| 24 print("const unsigned char module[] = {"); |
| 25 for (var i = 0; i < buffer.byteLength; i++) { |
| 26 print(" " + view[i] + ","); |
| 27 } |
| 28 print("};"); |
| 29 })(); |
| 30 |
10 (function ensure_incrementer() { | 31 (function ensure_incrementer() { |
11 var buff = readbuffer("test/mjsunit/wasm/incrementer.wasm"); | 32 var buff = readbuffer("test/mjsunit/wasm/incrementer.wasm"); |
12 var mod = new WebAssembly.Module(buff); | 33 var mod = new WebAssembly.Module(buff); |
13 var inst = new WebAssembly.Instance(mod); | 34 var inst = new WebAssembly.Instance(mod); |
14 var inc = inst.exports.increment; | 35 var inc = inst.exports.increment; |
15 assertEquals(3, inc(2)); | 36 assertEquals(3, inc(2)); |
16 }()) | 37 }()) |
OLD | NEW |