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 --track-field-types --use-gvn 6 7 function A(id) { 8 this.id = id; 9 } 10 11 var a1 = new A(1); 12 var a2 = new A(2); 13 14 15 var g; 16 function f(o, value) { 17 g = o.o; 18 o.o = value; 19 return o.o; 20 } 21 22 var obj = {o: a1}; 23 24 f(obj, a1); 25 f(obj, a1); 26 %OptimizeFunctionOnNextCall(f); 27 assertEquals(a2.id, f(obj, a2).id); 28