michael@0: function f(N) michael@0: { michael@0: for (var i = 0; i != N; ++i) { michael@0: var obj1 = {}, obj2 = {}; michael@0: obj1['a'+i] = 0; michael@0: obj2['b'+i] = 0; michael@0: for (var repeat = 0;repeat != 2; ++repeat) { michael@0: for (var j in obj1) { michael@0: for (var k in obj2) { michael@0: gc(); michael@0: } michael@0: } michael@0: } michael@0: } michael@0: } michael@0: var array = [function() { f(10); }, michael@0: function(array) { f(50); }, michael@0: function() { propertyIsEnumerable.call(undefined, {}); }, michael@0: ]; michael@0: try { michael@0: for (var i = 0; i != array.length; ++i) michael@0: array[i](); michael@0: } catch (e) {}