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

Unified Diff: src/isolate.cc

Issue 2335343007: Pool implementation for zone segments (Closed)
Patch Set: Remove garbage stack Created 4 years, 3 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « src/api.cc ('k') | src/v8.gyp » ('j') | src/zone/accounting-allocator.h » ('J')
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/isolate.cc
diff --git a/src/isolate.cc b/src/isolate.cc
index 768d91b6d938a5ee205679b0de0fc4c60e19d090..4dcec2750faa7a1f1d3f99c45d58665667fe897b 100644
--- a/src/isolate.cc
+++ b/src/isolate.cc
@@ -1903,8 +1903,8 @@ class VerboseAccountingAllocator : public AccountingAllocator {
VerboseAccountingAllocator(Heap* heap, size_t sample_bytes)
: heap_(heap), last_memory_usage_(0), sample_bytes_(sample_bytes) {}
- v8::internal::Segment* AllocateSegment(size_t size) override {
- v8::internal::Segment* memory = AccountingAllocator::AllocateSegment(size);
+ v8::internal::Segment* GetSegment(size_t size) override {
+ v8::internal::Segment* memory = AccountingAllocator::GetSegment(size);
if (memory) {
size_t current = GetCurrentMemoryUsage();
if (last_memory_usage_.Value() + sample_bytes_ < current) {
@@ -1915,8 +1915,8 @@ class VerboseAccountingAllocator : public AccountingAllocator {
return memory;
}
- void FreeSegment(v8::internal::Segment* memory) override {
- AccountingAllocator::FreeSegment(memory);
+ void ReturnSegment(v8::internal::Segment* memory) override {
+ AccountingAllocator::ReturnSegment(memory);
size_t current = GetCurrentMemoryUsage();
if (current + sample_bytes_ < last_memory_usage_.Value()) {
PrintJSON(current);
@@ -2169,9 +2169,6 @@ void Isolate::SetIsolateThreadLocals(Isolate* isolate,
Isolate::~Isolate() {
TRACE_ISOLATE(destructor);
- // Has to be called while counters_ are still alive
- runtime_zone_->DeleteKeptSegment();
-
// The entry stack must be empty when we get here.
DCHECK(entry_stack_ == NULL || entry_stack_->previous_item == NULL);
« no previous file with comments | « src/api.cc ('k') | src/v8.gyp » ('j') | src/zone/accounting-allocator.h » ('J')

Powered by Google App Engine
This is Rietveld 408576698