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

Side by Side Diff: test/mjsunit/asm/int32array-constant-key.js

Issue 2663243002: [asm] Fix lots of invalid asm.js tests (Closed)
Patch Set: Rebase Created 3 years, 10 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/asm/int32-umod.js ('k') | test/mjsunit/asm/int32array-negative-offset.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 2014 the V8 project authors. All rights reserved. 1 // Copyright 2014 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 function Module(stdlib, foreign, heap) { 5 function Module(stdlib, foreign, heap) {
6 "use asm"; 6 "use asm";
7 var MEM32 = new stdlib.Int32Array(heap); 7 var MEM32 = new stdlib.Int32Array(heap);
8 function loadm4194304() { 8 function loadm4194304() {
9 return MEM32[-4194304]; 9 var i = -4194304 << 2;
10 return MEM32[i >> 2] | 0;
10 } 11 }
11 function loadm0() { 12 function loadm0() {
12 return MEM32[-0]; 13 return MEM32[-0] | 0;
13 } 14 }
14 function load0() { 15 function load0() {
15 return MEM32[0]; 16 return MEM32[0] | 0;
16 } 17 }
17 function load4() { 18 function load4() {
18 return MEM32[4]; 19 return MEM32[4] | 0;
19 } 20 }
20 function storem4194304(v) { 21 function storem4194304(v) {
21 MEM32[-4194304] = v; 22 v = v | 0;
23 var i = -4194304 << 2;
24 MEM32[i >> 2] = v;
22 } 25 }
23 function storem0(v) { 26 function storem0(v) {
27 v = v | 0;
24 MEM32[-0] = v; 28 MEM32[-0] = v;
25 } 29 }
26 function store0(v) { 30 function store0(v) {
27 MEM32[0] = v; 31 v = v | 0;
32 MEM32[0 >> 2] = v;
28 } 33 }
29 function store4(v) { 34 function store4(v) {
30 MEM32[4] = v; 35 v = v | 0;
36 MEM32[(4 << 2) >> 2] = v;
31 } 37 }
32 return { loadm4194304: loadm4194304, storem4194304: storem4194304, 38 return { loadm4194304: loadm4194304, storem4194304: storem4194304,
33 loadm0: loadm0, storem0: storem0, load0: load0, store0: store0, 39 loadm0: loadm0, storem0: storem0, load0: load0, store0: store0,
34 load4: load4, store4: store4 }; 40 load4: load4, store4: store4 };
35 } 41 }
36 42
37 var m = Module(this, {}, new ArrayBuffer(4)); 43 var m = Module(this, {}, new ArrayBuffer(4));
38 44
39 assertEquals(undefined, m.loadm4194304()); 45 assertEquals(0, m.loadm4194304());
40 assertEquals(0, m.loadm0()); 46 assertEquals(0, m.loadm0());
41 assertEquals(0, m.load0()); 47 assertEquals(0, m.load0());
42 assertEquals(undefined, m.load4()); 48 assertEquals(0, m.load4());
43 m.storem4194304(123456789); 49 m.storem4194304(123456789);
44 assertEquals(undefined, m.loadm4194304()); 50 assertEquals(0, m.loadm4194304());
45 assertEquals(0, m.loadm0()); 51 assertEquals(0, m.loadm0());
46 assertEquals(0, m.load0()); 52 assertEquals(0, m.load0());
47 assertEquals(undefined, m.load4()); 53 assertEquals(0, m.load4());
48 m.storem0(987654321); 54 m.storem0(987654321);
49 assertEquals(undefined, m.loadm4194304()); 55 assertEquals(0, m.loadm4194304());
50 assertEquals(987654321, m.loadm0()); 56 assertEquals(987654321, m.loadm0());
51 assertEquals(987654321, m.load0()); 57 assertEquals(987654321, m.load0());
52 assertEquals(undefined, m.load4()); 58 assertEquals(0, m.load4());
53 m.store0(0x12345678); 59 m.store0(0x12345678);
54 assertEquals(undefined, m.loadm4194304()); 60 assertEquals(0, m.loadm4194304());
55 assertEquals(0x12345678, m.loadm0()); 61 assertEquals(0x12345678, m.loadm0());
56 assertEquals(0x12345678, m.load0()); 62 assertEquals(0x12345678, m.load0());
57 assertEquals(undefined, m.load4()); 63 assertEquals(0, m.load4());
58 m.store4(43); 64 m.store4(43);
59 assertEquals(undefined, m.loadm4194304()); 65 assertEquals(0, m.loadm4194304());
60 assertEquals(0x12345678, m.loadm0()); 66 assertEquals(0x12345678, m.loadm0());
61 assertEquals(0x12345678, m.load0()); 67 assertEquals(0x12345678, m.load0());
62 assertEquals(undefined, m.load4()); 68 assertEquals(0, m.load4());
OLDNEW
« no previous file with comments | « test/mjsunit/asm/int32-umod.js ('k') | test/mjsunit/asm/int32array-negative-offset.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698