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

Side by Side Diff: test/mjsunit/wasm/asm-wasm-heap.js

Issue 2251433002: [wasm] asm.js - Check stdlib.NaN is valid, prepare for the rest. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: fix Created 4 years, 4 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/asm-wasm-deopt.js ('k') | test/mjsunit/wasm/asm-wasm-stdlib.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 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 const stdlib = { 7 const stdlib = {
8 Math: Math, 8 Math: Math,
9 Int8Array: Int8Array, 9 Int8Array: Int8Array,
10 Int16Array: Int16Array, 10 Int16Array: Int16Array,
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
60 60
61 var js_module = eval("(" + nonasm_source + ")")(stdlib, {}, buffer); 61 var js_module = eval("(" + nonasm_source + ")")(stdlib, {}, buffer);
62 print("Testing " + asmfunc.name + " (js)..."); 62 print("Testing " + asmfunc.name + " (js)...");
63 expect(js_module); 63 expect(js_module);
64 64
65 print("Testing " + asmfunc.name + " (asm.js)..."); 65 print("Testing " + asmfunc.name + " (asm.js)...");
66 var asm_module = asmfunc(stdlib, {}, buffer); 66 var asm_module = asmfunc(stdlib, {}, buffer);
67 expect(asm_module); 67 expect(asm_module);
68 68
69 print("Testing " + asmfunc.name + " (wasm)..."); 69 print("Testing " + asmfunc.name + " (wasm)...");
70 var wasm_module = Wasm.instantiateModuleFromAsm(asm_source, null, buffer); 70 var wasm_module = Wasm.instantiateModuleFromAsm(
71 asm_source, stdlib, null, buffer);
71 expect(wasm_module); 72 expect(wasm_module);
72 } 73 }
73 74
74 function LoadAt_i32(stdlib, foreign, buffer) { 75 function LoadAt_i32(stdlib, foreign, buffer) {
75 "use asm"; 76 "use asm";
76 var HEAP32 = new stdlib.Int32Array(buffer); 77 var HEAP32 = new stdlib.Int32Array(buffer);
77 function load(a) { 78 function load(a) {
78 a = a | 0; 79 a = a | 0;
79 return HEAP32[a >> 2] | 0; 80 return HEAP32[a >> 2] | 0;
80 } 81 }
(...skipping 149 matching lines...) Expand 10 before | Expand all | Expand 10 after
230 231
231 RunThreeWayTest(LoadAt_f64, function(module) { 232 RunThreeWayTest(LoadAt_f64, function(module) {
232 var load = module.load; 233 var load = module.load;
233 for (index of OOB_INDEXES) assertEquals(NaN, load(index)); 234 for (index of OOB_INDEXES) assertEquals(NaN, load(index));
234 checkView(new Float64Array(buffer), load, 3); 235 checkView(new Float64Array(buffer), load, 3);
235 }); 236 });
236 237
237 // TODO(titzer): constant heap indexes 238 // TODO(titzer): constant heap indexes
238 // TODO(titzer): heap accesses with offsets and arithmetic 239 // TODO(titzer): heap accesses with offsets and arithmetic
239 // TODO(titzer): [i >> K] where K is greater than log(size) 240 // TODO(titzer): [i >> K] where K is greater than log(size)
OLDNEW
« no previous file with comments | « test/mjsunit/wasm/asm-wasm-deopt.js ('k') | test/mjsunit/wasm/asm-wasm-stdlib.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698