Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(13)

Side by Side Diff: Source/platform/heap/HeapTest.cpp

Issue 1157283005: Oilpan: Disable snapshot GCs in HeapTest.ThreadedWeakness (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 5 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2013 Google Inc. All rights reserved. 2 * Copyright (C) 2013 Google Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are 5 * modification, are permitted provided that the following conditions are
6 * met: 6 * met:
7 * 7 *
8 * * Redistributions of source code must retain the above copyright 8 * * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * * Redistributions in binary form must reproduce the above 10 * * Redistributions in binary form must reproduce the above
(...skipping 505 matching lines...) Expand 10 before | Expand all | Expand 10 after
516 Platform::current()->yieldCurrentThread(); 516 Platform::current()->yieldCurrentThread();
517 } 517 }
518 518
519 if (gcCount < gcPerThread) { 519 if (gcCount < gcPerThread) {
520 Heap::collectGarbage(ThreadState::NoHeapPointersOnStack, Thr eadState::GCWithSweep, Heap::ForcedGC); 520 Heap::collectGarbage(ThreadState::NoHeapPointersOnStack, Thr eadState::GCWithSweep, Heap::ForcedGC);
521 gcCount++; 521 gcCount++;
522 atomicIncrement(&m_gcCount); 522 atomicIncrement(&m_gcCount);
523 } 523 }
524 524
525 // Taking snapshot shouldn't have any bad side effect. 525 // Taking snapshot shouldn't have any bad side effect.
526 Heap::collectGarbage(ThreadState::NoHeapPointersOnStack, ThreadS tate::TakeSnapshot, Heap::ForcedGC); 526 // TODO(haraken): This snapshot GC causes crashes, so disable
527 // it at the moment. Fix the crash and enable it.
528 // Heap::collectGarbage(ThreadState::NoHeapPointersOnStack, Thre adState::TakeSnapshot, Heap::ForcedGC);
527 Heap::collectGarbage(ThreadState::NoHeapPointersOnStack, ThreadS tate::GCWithSweep, Heap::ForcedGC); 529 Heap::collectGarbage(ThreadState::NoHeapPointersOnStack, ThreadS tate::GCWithSweep, Heap::ForcedGC);
528 EXPECT_EQ(wrapper->value(), 0x0bbac0de); 530 EXPECT_EQ(wrapper->value(), 0x0bbac0de);
529 EXPECT_EQ((*globalPersistent)->value(), 0x0ed0cabb); 531 EXPECT_EQ((*globalPersistent)->value(), 0x0ed0cabb);
530 } 532 }
531 SafePointScope scope(ThreadState::NoHeapPointersOnStack); 533 SafePointScope scope(ThreadState::NoHeapPointersOnStack);
532 Platform::current()->yieldCurrentThread(); 534 Platform::current()->yieldCurrentThread();
533 } 535 }
534 ThreadState::detach(); 536 ThreadState::detach();
535 atomicDecrement(&m_threadsToFinish); 537 atomicDecrement(&m_threadsToFinish);
536 } 538 }
(...skipping 25 matching lines...) Expand all
562 Platform::current()->yieldCurrentThread(); 564 Platform::current()->yieldCurrentThread();
563 } 565 }
564 566
565 if (gcCount < gcPerThread) { 567 if (gcCount < gcPerThread) {
566 Heap::collectGarbage(ThreadState::NoHeapPointersOnStack, Thr eadState::GCWithSweep, Heap::ForcedGC); 568 Heap::collectGarbage(ThreadState::NoHeapPointersOnStack, Thr eadState::GCWithSweep, Heap::ForcedGC);
567 gcCount++; 569 gcCount++;
568 atomicIncrement(&m_gcCount); 570 atomicIncrement(&m_gcCount);
569 } 571 }
570 572
571 // Taking snapshot shouldn't have any bad side effect. 573 // Taking snapshot shouldn't have any bad side effect.
572 Heap::collectGarbage(ThreadState::NoHeapPointersOnStack, ThreadS tate::TakeSnapshot, Heap::ForcedGC); 574 // TODO(haraken): This snapshot GC causes crashes, so disable
575 // it at the moment. Fix the crash and enable it.
576 // Heap::collectGarbage(ThreadState::NoHeapPointersOnStack, Thre adState::TakeSnapshot, Heap::ForcedGC);
573 Heap::collectGarbage(ThreadState::NoHeapPointersOnStack, ThreadS tate::GCWithSweep, Heap::ForcedGC); 577 Heap::collectGarbage(ThreadState::NoHeapPointersOnStack, ThreadS tate::GCWithSweep, Heap::ForcedGC);
574 EXPECT_TRUE(weakMap->isEmpty()); 578 EXPECT_TRUE(weakMap->isEmpty());
575 EXPECT_TRUE(weakMap2.isEmpty()); 579 EXPECT_TRUE(weakMap2.isEmpty());
576 } 580 }
577 SafePointScope scope(ThreadState::NoHeapPointersOnStack); 581 SafePointScope scope(ThreadState::NoHeapPointersOnStack);
578 Platform::current()->yieldCurrentThread(); 582 Platform::current()->yieldCurrentThread();
579 } 583 }
580 ThreadState::detach(); 584 ThreadState::detach();
581 atomicDecrement(&m_threadsToFinish); 585 atomicDecrement(&m_threadsToFinish);
582 } 586 }
(...skipping 5532 matching lines...) Expand 10 before | Expand all | Expand 10 after
6115 { 6119 {
6116 Persistent<ClassWithMember> object = ClassWithMember::create(); 6120 Persistent<ClassWithMember> object = ClassWithMember::create();
6117 EXPECT_EQ(0, object->traceCount()); 6121 EXPECT_EQ(0, object->traceCount());
6118 TestMixinAllocatingObject* mixin = TestMixinAllocatingObject::create(object. get()); 6122 TestMixinAllocatingObject* mixin = TestMixinAllocatingObject::create(object. get());
6119 EXPECT_TRUE(mixin); 6123 EXPECT_TRUE(mixin);
6120 EXPECT_GT(object->traceCount(), 0); 6124 EXPECT_GT(object->traceCount(), 0);
6121 EXPECT_GT(mixin->traceCount(), 0); 6125 EXPECT_GT(mixin->traceCount(), 0);
6122 } 6126 }
6123 6127
6124 } // namespace blink 6128 } // namespace blink
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698