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, buffer) { 6 "use asm"; 7 function f(i) { 8 var j; 9 i = i|0; 10 do { 11 if (i > 0) { 12 j = i != 0; 13 i = (i - 1) | 0; 14 } else { 15 j = 0; 16 } 17 } while (j); 18 return i; 19 } 20 return {f:f}; 21 } 22 23 var m = Module(this, {}, new ArrayBuffer(64*1024)); 24 25 assertEquals(-1, m.f("-1")); 26 assertEquals(0, m.f(-Math.infinity)); 27 assertEquals(0, m.f(undefined)); 28 assertEquals(0, m.f(0)); 29 assertEquals(0, m.f(1)); 30 assertEquals(0, m.f(100)); 31