Home | History | Annotate | Download | only in asm
      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
      3 // found in the LICENSE file.
      4 
      5 function Module(stdlib, foreign, heap) {
      6   "use asm";
      7   function f0(i) {
      8     i = i|0;
      9     return i % 2 | 0;
     10   }
     11   function f1(i) {
     12     i = i|0;
     13     return i % 3 | 0;
     14   }
     15   function f2(i) {
     16     i = i|0;
     17     return i % 9 | 0;
     18   }
     19   function f3(i) {
     20     i = i|0;
     21     return i % 1024 | 0;
     22   }
     23   function f4(i) {
     24     i = i|0;
     25     return i % 3333339 | 0;
     26   }
     27   return { f0: f0, f1: f1, f2: f2, f3: f3, f4: f4 };
     28 }
     29 
     30 var m = Module(this, {}, new ArrayBuffer(1024));
     31 
     32 for (var i = -2147483648; i < 2147483648; i += 3999773) {
     33   assertEquals(i % 2 | 0, m.f0(i));
     34   assertEquals(i % 3 | 0, m.f1(i));
     35   assertEquals(i % 9 | 0, m.f2(i));
     36   assertEquals(i % 1024 | 0, m.f3(i));
     37   assertEquals(i % 3333339 | 0, m.f4(i));
     38 }
     39