1// Copyright 2016 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 --expose-gc --verify-heap 6 7function A() {} 8 9function g1() { 10 var obj = new A(); 11 obj.v0 = 0; 12 obj.v1 = 0; 13 obj.v2 = 0; 14 obj.v3 = 0; 15 obj.v4 = 0; 16 obj.v5 = 0; 17 obj.v6 = 0; 18 obj.v7 = 0; 19 obj.v8 = 0; 20 obj.v9 = 0; 21 return obj; 22} 23 24function g2() { 25 return new A(); 26} 27 28var o = g1(); 29%OptimizeFunctionOnNextCall(g2); 30g2(); 31o = null; 32gc(); 33 34for (var i = 0; i < 20; i++) { 35 var o = new A(); 36} 37g2(); 38 39gc(); // Boom! 40