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 7function p(x) { 8 this.x = x; 9} 10 11function f() { 12 var a = new p(1), b = new p(2); 13 for (var i = 0; i < 1; i++) { 14 a.x += b.x; 15 } 16 return a.x; 17} 18 19new p(0.1); // make 'x' mutable box double field in p. 20 21assertEquals(3, f()); 22assertEquals(3, f()); 23%OptimizeFunctionOnNextCall(f); 24assertEquals(3, f()); 25