| Index: test/cctest/test-heap.cc
|
| diff --git a/test/cctest/test-heap.cc b/test/cctest/test-heap.cc
|
| index cb4f269dd530d71fcd6fa7a5543dd6c3fa5593a6..1bb89eb8b63b4a4e93d61f1461410c7a425602d5 100644
|
| --- a/test/cctest/test-heap.cc
|
| +++ b/test/cctest/test-heap.cc
|
| @@ -3079,69 +3079,6 @@ TEST(ReleaseStackTraceData) {
|
| }
|
|
|
|
|
| -TEST(Regression144230) {
|
| - i::FLAG_stress_compaction = false;
|
| - CcTest::InitializeVM();
|
| - Isolate* isolate = CcTest::i_isolate();
|
| - Heap* heap = isolate->heap();
|
| - HandleScope scope(isolate);
|
| -
|
| - // First make sure that the uninitialized CallIC stub is on a single page
|
| - // that will later be selected as an evacuation candidate.
|
| - {
|
| - HandleScope inner_scope(isolate);
|
| - AlwaysAllocateScope always_allocate;
|
| - SimulateFullSpace(heap->code_space());
|
| - isolate->stub_cache()->ComputeCallInitialize(9);
|
| - }
|
| -
|
| - // Second compile a CallIC and execute it once so that it gets patched to
|
| - // the pre-monomorphic stub. These code objects are on yet another page.
|
| - {
|
| - HandleScope inner_scope(isolate);
|
| - AlwaysAllocateScope always_allocate;
|
| - SimulateFullSpace(heap->code_space());
|
| - CompileRun("var o = { f:function(a,b,c,d,e,f,g,h,i) {}};"
|
| - "function call() { o.f(1,2,3,4,5,6,7,8,9); };"
|
| - "call();");
|
| - }
|
| -
|
| - // Third we fill up the last page of the code space so that it does not get
|
| - // chosen as an evacuation candidate.
|
| - {
|
| - HandleScope inner_scope(isolate);
|
| - AlwaysAllocateScope always_allocate;
|
| - CompileRun("for (var i = 0; i < 2000; i++) {"
|
| - " eval('function f' + i + '() { return ' + i +'; };' +"
|
| - " 'f' + i + '();');"
|
| - "}");
|
| - }
|
| - heap->CollectAllGarbage(Heap::kNoGCFlags);
|
| -
|
| - // Fourth is the tricky part. Make sure the code containing the CallIC is
|
| - // visited first without clearing the IC. The shared function info is then
|
| - // visited later, causing the CallIC to be cleared.
|
| - Handle<String> name = isolate->factory()->InternalizeUtf8String("call");
|
| - Handle<GlobalObject> global(isolate->context()->global_object());
|
| - Handle<Smi> zero(Smi::FromInt(0), isolate);
|
| - MaybeObject* maybe_call = global->GetProperty(*name);
|
| - JSFunction* call = JSFunction::cast(maybe_call->ToObjectChecked());
|
| - JSReceiver::SetProperty(global, name, zero, NONE, kNonStrictMode);
|
| - isolate->compilation_cache()->Clear();
|
| - call->shared()->set_ic_age(heap->global_ic_age() + 1);
|
| - Handle<Object> call_code(call->code(), isolate);
|
| - Handle<Object> call_function(call, isolate);
|
| -
|
| - // Now we are ready to mess up the heap.
|
| - heap->CollectAllGarbage(Heap::kReduceMemoryFootprintMask);
|
| -
|
| - // Either heap verification caught the problem already or we go kaboom once
|
| - // the CallIC is executed the next time.
|
| - JSReceiver::SetProperty(global, name, call_function, NONE, kNonStrictMode);
|
| - CompileRun("call();");
|
| -}
|
| -
|
| -
|
| TEST(Regress159140) {
|
| i::FLAG_allow_natives_syntax = true;
|
| i::FLAG_flush_code_incrementally = true;
|
|
|