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 // Flags: --allow-natives-syntax 6 7 function f(string, radix) { 8 // Use a phi to force radix into heap number representation. 9 radix = (radix == 0) ? radix : (radix >> 0); 10 if (radix != 2) return NaN; 11 return %StringParseInt(string, radix); 12 } 13 14 assertEquals(2, (-4294967294) >> 0); 15 assertEquals(3, f("11", -4294967294)); 16 assertEquals(NaN, f("11", -2147483650)); 17 %OptimizeFunctionOnNextCall(f); 18 assertEquals(3, f("11", -4294967294)); 19