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

Side by Side Diff: test/mjsunit/wasm/instantiate-module-basic.js

Issue 2591753002: [wasm] Implement correct 2-level namespace for imports. (Closed)
Patch Set: Fix debug tests Created 3 years, 12 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
« no previous file with comments | « test/mjsunit/wasm/instance-memory-gc-stress.js ('k') | test/mjsunit/wasm/js-api.js » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 let kReturnValue = 117; 10 let kReturnValue = 117;
(...skipping 102 matching lines...) Expand 10 before | Expand all | Expand 10 after
113 assertTrue(instance_1 != instance_2); 113 assertTrue(instance_1 != instance_2);
114 }); 114 });
115 })(); 115 })();
116 116
117 (function InstancesAreIsolatedFromEachother() { 117 (function InstancesAreIsolatedFromEachother() {
118 print("InstancesAreIsolatedFromEachother..."); 118 print("InstancesAreIsolatedFromEachother...");
119 var builder = new WasmModuleBuilder(); 119 var builder = new WasmModuleBuilder();
120 builder.addMemory(1,1, true); 120 builder.addMemory(1,1, true);
121 var kSig_v_i = makeSig([kAstI32], []); 121 var kSig_v_i = makeSig([kAstI32], []);
122 var signature = builder.addType(kSig_v_i); 122 var signature = builder.addType(kSig_v_i);
123 builder.addImport("some_value", kSig_i_v); 123 builder.addImport("m", "some_value", kSig_i_v);
124 builder.addImport("writer", signature); 124 builder.addImport("m", "writer", signature);
125 125
126 builder.addFunction("main", kSig_i_i) 126 builder.addFunction("main", kSig_i_i)
127 .addBody([ 127 .addBody([
128 kExprGetLocal, 0, 128 kExprGetLocal, 0,
129 kExprI32LoadMem, 0, 0, 129 kExprI32LoadMem, 0, 0,
130 kExprI32Const, 1, 130 kExprI32Const, 1,
131 kExprCallIndirect, signature, kTableZero, 131 kExprCallIndirect, signature, kTableZero,
132 kExprGetLocal,0, 132 kExprGetLocal,0,
133 kExprI32LoadMem,0, 0, 133 kExprI32LoadMem,0, 0,
134 kExprCallFunction, 0, 134 kExprCallFunction, 0,
(...skipping 13 matching lines...) Expand all
148 var mem_1 = new WebAssembly.Memory({initial: 1}); 148 var mem_1 = new WebAssembly.Memory({initial: 1});
149 var mem_2 = new WebAssembly.Memory({initial: 1}); 149 var mem_2 = new WebAssembly.Memory({initial: 1});
150 var view_1 = new Int32Array(mem_1.buffer); 150 var view_1 = new Int32Array(mem_1.buffer);
151 var view_2 = new Int32Array(mem_2.buffer); 151 var view_2 = new Int32Array(mem_2.buffer);
152 152
153 view_1[0] = 42; 153 view_1[0] = 42;
154 view_2[0] = 1000; 154 view_2[0] = 1000;
155 155
156 var outval_1; 156 var outval_1;
157 var outval_2; 157 var outval_2;
158 var i1 = new WebAssembly.Instance(module, {some_value: () => 1, 158 var i1 = new WebAssembly.Instance(module, {m: {some_value: () => 1,
159 writer: (x)=>outval_1 = x }, mem_1); 159 writer: (x)=>outval_1 = x }},
160 var i2 = new WebAssembly.Instance(module, {some_value: () => 2, 160 mem_1);
161 writer: (x)=>outval_2 = x }, mem_2); 161 var i2 = new WebAssembly.Instance(module, {m: {some_value: () => 2,
162 writer: (x)=>outval_2 = x }},
163 mem_2);
162 164
163 assertEquals(43, i1.exports.main(0)); 165 assertEquals(43, i1.exports.main(0));
164 assertEquals(1002, i2.exports.main(0)); 166 assertEquals(1002, i2.exports.main(0));
165 167
166 assertEquals(42, outval_1); 168 assertEquals(42, outval_1);
167 assertEquals(1000, outval_2); 169 assertEquals(1000, outval_2);
168 })(); 170 })();
169 171
170 (function GlobalsArePrivateToTheInstance() { 172 (function GlobalsArePrivateToTheInstance() {
171 print("GlobalsArePrivateToTheInstance..."); 173 print("GlobalsArePrivateToTheInstance...");
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
217 assertEquals(1, i1.exports.f()); 219 assertEquals(1, i1.exports.f());
218 assertEquals(1000, i2.exports.f()); 220 assertEquals(1000, i2.exports.f());
219 })(); 221 })();
220 222
221 (function MustBeMemory() { 223 (function MustBeMemory() {
222 print("MustBeMemory..."); 224 print("MustBeMemory...");
223 var memory = new ArrayBuffer(65536); 225 var memory = new ArrayBuffer(65536);
224 var module = new WebAssembly.Module(buffer); 226 var module = new WebAssembly.Module(buffer);
225 assertThrows(() => new WebAssembly.Instance(module, null, memory), TypeError); 227 assertThrows(() => new WebAssembly.Instance(module, null, memory), TypeError);
226 })(); 228 })();
OLDNEW
« no previous file with comments | « test/mjsunit/wasm/instance-memory-gc-stress.js ('k') | test/mjsunit/wasm/js-api.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698