OLD | NEW |
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 function f1(i) { | 7 function f1(i) { |
8 i = i|0; | 8 i = i|0; |
9 return i / 3 | 0; | 9 return (i | 0) / 3 | 0; |
10 } | 10 } |
11 function f2(i) { | 11 function f2(i) { |
12 i = i|0; | 12 i = i|0; |
13 return i / 13 | 0; | 13 return (i | 0) / 13 | 0; |
14 } | 14 } |
15 function f3(i) { | 15 function f3(i) { |
16 i = i|0; | 16 i = i|0; |
17 return i / 1024 | 0; | 17 return (i | 0) / 1024 | 0; |
18 } | 18 } |
19 function f4(i) { | 19 function f4(i) { |
20 i = i|0; | 20 i = i|0; |
21 return i / 3733331 | 0; | 21 return (i | 0) / 3733331 | 0; |
22 } | 22 } |
23 return { f1: f1, f2: f2, f3: f3, f4: f4 }; | 23 return { f1: f1, f2: f2, f3: f3, f4: f4 }; |
24 } | 24 } |
25 | 25 |
26 var m = Module(this, {}, new ArrayBuffer(1024)); | 26 var m = Module(this, {}, new ArrayBuffer(1024)); |
27 | 27 |
28 for (var i = -2147483648; i < 2147483648; i += 3999777) { | 28 for (var i = -2147483648; i < 2147483648; i += 3999777) { |
29 assertEquals(i / 3 | 0, m.f1(i)); | 29 assertEquals(i / 3 | 0, m.f1(i)); |
30 assertEquals(i / 13 | 0, m.f2(i)); | 30 assertEquals(i / 13 | 0, m.f2(i)); |
31 assertEquals(i / 1024 | 0, m.f3(i)); | 31 assertEquals(i / 1024 | 0, m.f3(i)); |
32 assertEquals(i / 3733331 | 0, m.f4(i)); | 32 assertEquals(i / 3733331 | 0, m.f4(i)); |
33 } | 33 } |
OLD | NEW |