OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef V8_HEAP_HEAP_H_ | 5 #ifndef V8_HEAP_HEAP_H_ |
6 #define V8_HEAP_HEAP_H_ | 6 #define V8_HEAP_HEAP_H_ |
7 | 7 |
8 #include <cmath> | 8 #include <cmath> |
9 | 9 |
10 #include "src/allocation.h" | 10 #include "src/allocation.h" |
(...skipping 1918 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1929 | 1929 |
1930 Address DoScavenge(ObjectVisitor* scavenge_visitor, Address new_space_front); | 1930 Address DoScavenge(ObjectVisitor* scavenge_visitor, Address new_space_front); |
1931 static void ScavengeStoreBufferCallback(Heap* heap, MemoryChunk* page, | 1931 static void ScavengeStoreBufferCallback(Heap* heap, MemoryChunk* page, |
1932 StoreBufferEvent event); | 1932 StoreBufferEvent event); |
1933 | 1933 |
1934 // Performs a major collection in the whole heap. | 1934 // Performs a major collection in the whole heap. |
1935 void MarkCompact(); | 1935 void MarkCompact(); |
1936 | 1936 |
1937 // Code to be run before and after mark-compact. | 1937 // Code to be run before and after mark-compact. |
1938 void MarkCompactPrologue(); | 1938 void MarkCompactPrologue(); |
| 1939 void MarkCompactEpilogue(); |
1939 | 1940 |
1940 void ProcessNativeContexts(WeakObjectRetainer* retainer); | 1941 void ProcessNativeContexts(WeakObjectRetainer* retainer); |
1941 void ProcessArrayBuffers(WeakObjectRetainer* retainer); | 1942 void ProcessArrayBuffers(WeakObjectRetainer* retainer); |
1942 void ProcessAllocationSites(WeakObjectRetainer* retainer); | 1943 void ProcessAllocationSites(WeakObjectRetainer* retainer); |
1943 | 1944 |
1944 // Deopts all code that contains allocation instruction which are tenured or | 1945 // Deopts all code that contains allocation instruction which are tenured or |
1945 // not tenured. Moreover it clears the pretenuring allocation site statistics. | 1946 // not tenured. Moreover it clears the pretenuring allocation site statistics. |
1946 void ResetAllAllocationSitesDependentCode(PretenureFlag flag); | 1947 void ResetAllAllocationSitesDependentCode(PretenureFlag flag); |
1947 | 1948 |
1948 // Evaluates local pretenuring for the old space and calls | 1949 // Evaluates local pretenuring for the old space and calls |
(...skipping 635 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2584 DisallowHeapAllocation no_allocation; // i.e. no gc allowed. | 2585 DisallowHeapAllocation no_allocation; // i.e. no gc allowed. |
2585 | 2586 |
2586 private: | 2587 private: |
2587 DISALLOW_IMPLICIT_CONSTRUCTORS(PathTracer); | 2588 DISALLOW_IMPLICIT_CONSTRUCTORS(PathTracer); |
2588 }; | 2589 }; |
2589 #endif // DEBUG | 2590 #endif // DEBUG |
2590 } | 2591 } |
2591 } // namespace v8::internal | 2592 } // namespace v8::internal |
2592 | 2593 |
2593 #endif // V8_HEAP_HEAP_H_ | 2594 #endif // V8_HEAP_HEAP_H_ |
OLD | NEW |