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 var big = 1e10; 8 var backup = new Float64Array(1); 9 10 function mult0(val){ 11 var prod = val * big; 12 backup[0] = prod; 13 var rounded = Math.round(prod); 14 assertEquals(prod, backup[0]); 15 return rounded; 16 } 17 18 var count = 5; 19 for (var i = 0; i < count; i++) { 20 if (i == count - 1) %OptimizeFunctionOnNextCall(mult0); 21 var result = mult0(-1); 22 assertEquals(result, -big); 23 } 24