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 #include <map> | 9 #include <map> |
10 | 10 |
(...skipping 941 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
952 void FreeQueuedChunks(MemoryChunk* list_head); | 952 void FreeQueuedChunks(MemoryChunk* list_head); |
953 void FreeQueuedChunks(); | 953 void FreeQueuedChunks(); |
954 void WaitUntilUnmappingOfFreeChunksCompleted(); | 954 void WaitUntilUnmappingOfFreeChunksCompleted(); |
955 | 955 |
956 // Completely clear the Instanceof cache (to stop it keeping objects alive | 956 // Completely clear the Instanceof cache (to stop it keeping objects alive |
957 // around a GC). | 957 // around a GC). |
958 inline void CompletelyClearInstanceofCache(); | 958 inline void CompletelyClearInstanceofCache(); |
959 | 959 |
960 inline uint32_t HashSeed(); | 960 inline uint32_t HashSeed(); |
961 | 961 |
962 inline Smi* NextScriptId(); | 962 inline int NextScriptId(); |
963 | 963 |
964 inline void SetArgumentsAdaptorDeoptPCOffset(int pc_offset); | 964 inline void SetArgumentsAdaptorDeoptPCOffset(int pc_offset); |
965 inline void SetConstructStubDeoptPCOffset(int pc_offset); | 965 inline void SetConstructStubDeoptPCOffset(int pc_offset); |
966 inline void SetGetterStubDeoptPCOffset(int pc_offset); | 966 inline void SetGetterStubDeoptPCOffset(int pc_offset); |
967 inline void SetSetterStubDeoptPCOffset(int pc_offset); | 967 inline void SetSetterStubDeoptPCOffset(int pc_offset); |
968 | 968 |
969 // For post mortem debugging. | 969 // For post mortem debugging. |
970 void RememberUnmappedPage(Address page, bool compacted); | 970 void RememberUnmappedPage(Address page, bool compacted); |
971 | 971 |
972 // Global inline caching age: it is incremented on some GCs after context | 972 // Global inline caching age: it is incremented on some GCs after context |
(...skipping 1324 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
2297 // The size of objects in old generation after the last MarkCompact GC. | 2297 // The size of objects in old generation after the last MarkCompact GC. |
2298 size_t old_generation_size_at_last_gc_; | 2298 size_t old_generation_size_at_last_gc_; |
2299 | 2299 |
2300 // If the --deopt_every_n_garbage_collections flag is set to a positive value, | 2300 // If the --deopt_every_n_garbage_collections flag is set to a positive value, |
2301 // this variable holds the number of garbage collections since the last | 2301 // this variable holds the number of garbage collections since the last |
2302 // deoptimization triggered by garbage collection. | 2302 // deoptimization triggered by garbage collection. |
2303 int gcs_since_last_deopt_; | 2303 int gcs_since_last_deopt_; |
2304 | 2304 |
2305 int allocation_sites_scratchpad_length_; | 2305 int allocation_sites_scratchpad_length_; |
2306 | 2306 |
2307 // Handling of script id generation is in Heap::NextScriptId(). | |
2308 int last_script_id_; | |
Michael Starzinger
2015/09/28 12:01:36
As discussed offline: Let's keep that one part of
| |
2309 | |
2307 char trace_ring_buffer_[kTraceRingBufferSize]; | 2310 char trace_ring_buffer_[kTraceRingBufferSize]; |
2308 // If it's not full then the data is from 0 to ring_buffer_end_. If it's | 2311 // If it's not full then the data is from 0 to ring_buffer_end_. If it's |
2309 // full then the data is from ring_buffer_end_ to the end of the buffer and | 2312 // full then the data is from ring_buffer_end_ to the end of the buffer and |
2310 // from 0 to ring_buffer_end_. | 2313 // from 0 to ring_buffer_end_. |
2311 bool ring_buffer_full_; | 2314 bool ring_buffer_full_; |
2312 size_t ring_buffer_end_; | 2315 size_t ring_buffer_end_; |
2313 | 2316 |
2314 // Shared state read by the scavenge collector and set by ScavengeObject. | 2317 // Shared state read by the scavenge collector and set by ScavengeObject. |
2315 PromotionQueue promotion_queue_; | 2318 PromotionQueue promotion_queue_; |
2316 | 2319 |
(...skipping 398 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
2715 DisallowHeapAllocation no_allocation; // i.e. no gc allowed. | 2718 DisallowHeapAllocation no_allocation; // i.e. no gc allowed. |
2716 | 2719 |
2717 private: | 2720 private: |
2718 DISALLOW_IMPLICIT_CONSTRUCTORS(PathTracer); | 2721 DISALLOW_IMPLICIT_CONSTRUCTORS(PathTracer); |
2719 }; | 2722 }; |
2720 #endif // DEBUG | 2723 #endif // DEBUG |
2721 } | 2724 } |
2722 } // namespace v8::internal | 2725 } // namespace v8::internal |
2723 | 2726 |
2724 #endif // V8_HEAP_HEAP_H_ | 2727 #endif // V8_HEAP_HEAP_H_ |
OLD | NEW |