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