| Index: test/cctest/test-heap.cc
|
| diff --git a/test/cctest/test-heap.cc b/test/cctest/test-heap.cc
|
| index a64915f0a6d9f4243611f9ab5e9825e4e5520428..4646f3df66e555b128cdbe3342879b8b7b3a9b85 100644
|
| --- a/test/cctest/test-heap.cc
|
| +++ b/test/cctest/test-heap.cc
|
| @@ -3393,15 +3393,6 @@ static void CheckVectorIC(Handle<JSFunction> f, int ic_slot_index,
|
| }
|
|
|
|
|
| -static void CheckVectorICCleared(Handle<JSFunction> f, int ic_slot_index) {
|
| - Handle<TypeFeedbackVector> vector =
|
| - Handle<TypeFeedbackVector>(f->shared()->feedback_vector());
|
| - FeedbackVectorICSlot slot(ic_slot_index);
|
| - LoadICNexus nexus(vector, slot);
|
| - CHECK(IC::IsCleared(&nexus));
|
| -}
|
| -
|
| -
|
| TEST(IncrementalMarkingPreservesMonomorphicIC) {
|
| if (i::FLAG_always_opt) return;
|
| CcTest::InitializeVM();
|
| @@ -3437,50 +3428,6 @@ TEST(IncrementalMarkingPreservesMonomorphicIC) {
|
| }
|
|
|
|
|
| -TEST(IncrementalMarkingClearsMonomorphicIC) {
|
| - if (i::FLAG_always_opt) return;
|
| - CcTest::InitializeVM();
|
| - v8::HandleScope scope(CcTest::isolate());
|
| - v8::Local<v8::Value> obj1;
|
| -
|
| - {
|
| - LocalContext env;
|
| - CompileRun("function fun() { this.x = 1; }; var obj = new fun();");
|
| - obj1 = env->Global()->Get(v8_str("obj"));
|
| - }
|
| -
|
| - // Prepare function f that contains a monomorphic IC for object
|
| - // originating from a different native context.
|
| - CcTest::global()->Set(v8_str("obj1"), obj1);
|
| - CompileRun("function f(o) { return o.x; } f(obj1); f(obj1);");
|
| - Handle<JSFunction> f =
|
| - v8::Utils::OpenHandle(
|
| - *v8::Handle<v8::Function>::Cast(
|
| - CcTest::global()->Get(v8_str("f"))));
|
| -
|
| - Code* ic_before = FindFirstIC(f->shared()->code(), Code::LOAD_IC);
|
| - if (FLAG_vector_ics) {
|
| - CheckVectorIC(f, 0, MONOMORPHIC);
|
| - CHECK(ic_before->ic_state() == DEFAULT);
|
| - } else {
|
| - CHECK(ic_before->ic_state() == MONOMORPHIC);
|
| - }
|
| -
|
| - // Fire context dispose notification.
|
| - CcTest::isolate()->ContextDisposedNotification();
|
| - SimulateIncrementalMarking(CcTest::heap());
|
| - CcTest::heap()->CollectAllGarbage(Heap::kNoGCFlags);
|
| -
|
| - Code* ic_after = FindFirstIC(f->shared()->code(), Code::LOAD_IC);
|
| - if (FLAG_vector_ics) {
|
| - CheckVectorICCleared(f, 0);
|
| - CHECK(ic_after->ic_state() == DEFAULT);
|
| - } else {
|
| - CHECK(IC::IsCleared(ic_after));
|
| - }
|
| -}
|
| -
|
| -
|
| TEST(IncrementalMarkingPreservesPolymorphicIC) {
|
| if (i::FLAG_always_opt) return;
|
| CcTest::InitializeVM();
|
| @@ -3529,57 +3476,6 @@ TEST(IncrementalMarkingPreservesPolymorphicIC) {
|
| }
|
|
|
|
|
| -TEST(IncrementalMarkingClearsPolymorphicIC) {
|
| - if (i::FLAG_always_opt) return;
|
| - CcTest::InitializeVM();
|
| - v8::HandleScope scope(CcTest::isolate());
|
| - v8::Local<v8::Value> obj1, obj2;
|
| -
|
| - {
|
| - LocalContext env;
|
| - CompileRun("function fun() { this.x = 1; }; var obj = new fun();");
|
| - obj1 = env->Global()->Get(v8_str("obj"));
|
| - }
|
| -
|
| - {
|
| - LocalContext env;
|
| - CompileRun("function fun() { this.x = 2; }; var obj = new fun();");
|
| - obj2 = env->Global()->Get(v8_str("obj"));
|
| - }
|
| -
|
| - // Prepare function f that contains a polymorphic IC for objects
|
| - // originating from two different native contexts.
|
| - CcTest::global()->Set(v8_str("obj1"), obj1);
|
| - CcTest::global()->Set(v8_str("obj2"), obj2);
|
| - CompileRun("function f(o) { return o.x; } f(obj1); f(obj1); f(obj2);");
|
| - Handle<JSFunction> f =
|
| - v8::Utils::OpenHandle(
|
| - *v8::Handle<v8::Function>::Cast(
|
| - CcTest::global()->Get(v8_str("f"))));
|
| -
|
| - Code* ic_before = FindFirstIC(f->shared()->code(), Code::LOAD_IC);
|
| - if (FLAG_vector_ics) {
|
| - CheckVectorIC(f, 0, POLYMORPHIC);
|
| - CHECK(ic_before->ic_state() == DEFAULT);
|
| - } else {
|
| - CHECK(ic_before->ic_state() == POLYMORPHIC);
|
| - }
|
| -
|
| - // Fire context dispose notification.
|
| - CcTest::isolate()->ContextDisposedNotification();
|
| - SimulateIncrementalMarking(CcTest::heap());
|
| - CcTest::heap()->CollectAllGarbage(Heap::kNoGCFlags);
|
| -
|
| - Code* ic_after = FindFirstIC(f->shared()->code(), Code::LOAD_IC);
|
| - if (FLAG_vector_ics) {
|
| - CheckVectorICCleared(f, 0);
|
| - CHECK(ic_before->ic_state() == DEFAULT);
|
| - } else {
|
| - CHECK(IC::IsCleared(ic_after));
|
| - }
|
| -}
|
| -
|
| -
|
| class SourceResource : public v8::String::ExternalOneByteStringResource {
|
| public:
|
| explicit SourceResource(const char* data)
|
|
|