OLD | NEW |
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 722 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
733 gc_state_ == kSweepingAndIdleGCScheduled || | 733 gc_state_ == kSweepingAndIdleGCScheduled || |
734 gc_state_ == kSweepingAndPreciseGCScheduled); | 734 gc_state_ == kSweepingAndPreciseGCScheduled); |
735 CompleteSweep(); | 735 CompleteSweep(); |
736 break; | 736 break; |
737 case kGCRunning: | 737 case kGCRunning: |
738 DCHECK(!IsInGC()); | 738 DCHECK(!IsInGC()); |
739 VERIFY_STATE_TRANSITION(gc_state_ != kGCRunning); | 739 VERIFY_STATE_TRANSITION(gc_state_ != kGCRunning); |
740 break; | 740 break; |
741 case kSweeping: | 741 case kSweeping: |
742 DCHECK(IsInGC()); | 742 DCHECK(IsInGC()); |
743 ASSERT(CheckThread()); | 743 DCHECK(CheckThread()); |
744 VERIFY_STATE_TRANSITION(gc_state_ == kGCRunning); | 744 VERIFY_STATE_TRANSITION(gc_state_ == kGCRunning); |
745 break; | 745 break; |
746 case kSweepingAndIdleGCScheduled: | 746 case kSweepingAndIdleGCScheduled: |
747 case kSweepingAndPreciseGCScheduled: | 747 case kSweepingAndPreciseGCScheduled: |
748 DCHECK(CheckThread()); | 748 DCHECK(CheckThread()); |
749 VERIFY_STATE_TRANSITION(gc_state_ == kSweeping || | 749 VERIFY_STATE_TRANSITION(gc_state_ == kSweeping || |
750 gc_state_ == kSweepingAndIdleGCScheduled || | 750 gc_state_ == kSweepingAndIdleGCScheduled || |
751 gc_state_ == kSweepingAndPreciseGCScheduled); | 751 gc_state_ == kSweepingAndPreciseGCScheduled); |
752 break; | 752 break; |
753 default: | 753 default: |
(...skipping 805 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1559 CollectGarbage(BlinkGC::kNoHeapPointersOnStack, BlinkGC::kGCWithSweep, | 1559 CollectGarbage(BlinkGC::kNoHeapPointersOnStack, BlinkGC::kGCWithSweep, |
1560 BlinkGC::kForcedGC); | 1560 BlinkGC::kForcedGC); |
1561 size_t live_objects = Heap().HeapStats().MarkedObjectSize(); | 1561 size_t live_objects = Heap().HeapStats().MarkedObjectSize(); |
1562 if (live_objects == previous_live_objects) | 1562 if (live_objects == previous_live_objects) |
1563 break; | 1563 break; |
1564 previous_live_objects = live_objects; | 1564 previous_live_objects = live_objects; |
1565 } | 1565 } |
1566 } | 1566 } |
1567 | 1567 |
1568 } // namespace blink | 1568 } // namespace blink |
OLD | NEW |