Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(167)

Side by Side Diff: test/mjsunit/wasm/ffi-error.js

Issue 2345593003: [wasm] Master CL for Binary 0xC changes. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: [wasm] Master CL for Binary 0xC changes. Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2015 the V8 project authors. All rights reserved. 1 // Copyright 2015 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 load("test/mjsunit/wasm/wasm-constants.js"); 7 load("test/mjsunit/wasm/wasm-constants.js");
8 load("test/mjsunit/wasm/wasm-module-builder.js"); 8 load("test/mjsunit/wasm/wasm-module-builder.js");
9 9
10 function testCallFFI(ffi) { 10 function testCallFFI(ffi) {
11 var builder = new WasmModuleBuilder(); 11 var builder = new WasmModuleBuilder();
12 12
13 var sig_index = kSig_i_dd; 13 var sig_index = kSig_i_dd;
14 builder.addImport("fun", sig_index); 14 builder.addImport("fun", sig_index);
15 builder.addFunction("main", sig_index) 15 builder.addFunction("main", sig_index)
16 .addBody([ 16 .addBody([
17 kExprGetLocal, 0, // -- 17 kExprGetLocal, 0, // --
18 kExprGetLocal, 1, // -- 18 kExprGetLocal, 1, // --
19 kExprCallFunction, kArity2, 0, // -- 19 kExprCallFunction, 0, // --
20 ]) // -- 20 ]) // --
21 .exportFunc(); 21 .exportFunc();
22 22
23 var module = builder.instantiate(ffi); 23 var module = builder.instantiate(ffi);
24 } 24 }
25 25
26 // everything is good. 26 // everything is good.
27 (function() { 27 (function() {
28 var ffi = new Object(); 28 var ffi = new Object();
29 ffi.fun = function(a, b) { print(a, b); } 29 ffi.fun = function(a, b) { print(a, b); }
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after
82 82
83 (function I64JSImportThrows() { 83 (function I64JSImportThrows() {
84 var builder = new WasmModuleBuilder(); 84 var builder = new WasmModuleBuilder();
85 var sig_index = builder.addType(kSig_i_i); 85 var sig_index = builder.addType(kSig_i_i);
86 var sig_i64_index = builder.addType(kSig_i_l); 86 var sig_i64_index = builder.addType(kSig_i_l);
87 var index = builder.addImport("func", sig_i64_index); 87 var index = builder.addImport("func", sig_i64_index);
88 builder.addFunction("main", sig_index) 88 builder.addFunction("main", sig_index)
89 .addBody([ 89 .addBody([
90 kExprGetLocal, 0, 90 kExprGetLocal, 0,
91 kExprI64SConvertI32, 91 kExprI64SConvertI32,
92 kExprCallImport, kArity1, index // -- 92 kExprCallFunction, index // --
93 ]) // -- 93 ]) // --
94 .exportFunc(); 94 .exportFunc();
95 var func = function() {return {};}; 95 var func = function() {return {};};
96 var main = builder.instantiate({func: func}).exports.main; 96 var main = builder.instantiate({func: func}).exports.main;
97 assertThrows(function() { 97 assertThrows(function() {
98 main(13); 98 main(13);
99 }, TypeError); 99 }, TypeError);
100 })(); 100 })();
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698