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

Unified Diff: src/heap/spaces.h

Issue 2241503002: [heap] AcccountingStats:: int/intptr_t -> size_t (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 4 years, 4 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 | « no previous file | src/heap/spaces.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/heap/spaces.h
diff --git a/src/heap/spaces.h b/src/heap/spaces.h
index cd5ffd1287e3231d9735051040a8150f541aa41a..ae2f86c32073bd195b377e86e972d997e70767ce 100644
--- a/src/heap/spaces.h
+++ b/src/heap/spaces.h
@@ -1592,74 +1592,75 @@ class AllocationStats BASE_EMBEDDED {
void ClearSize() { size_ = capacity_; }
// Accessors for the allocation statistics.
- intptr_t Capacity() { return capacity_; }
- intptr_t MaxCapacity() { return max_capacity_; }
- intptr_t Size() {
- CHECK_GE(size_, 0);
- return size_;
- }
+ size_t Capacity() { return capacity_; }
+ size_t MaxCapacity() { return max_capacity_; }
+ size_t Size() { return size_; }
// Grow the space by adding available bytes. They are initially marked as
// being in use (part of the size), but will normally be immediately freed,
// putting them on the free list and removing them from size_.
- void ExpandSpace(int size_in_bytes) {
- capacity_ += size_in_bytes;
- size_ += size_in_bytes;
+ void ExpandSpace(size_t bytes) {
+ DCHECK_GE(size_ + bytes, size_);
+ DCHECK_GE(capacity_ + bytes, capacity_);
+ capacity_ += bytes;
+ size_ += bytes;
if (capacity_ > max_capacity_) {
max_capacity_ = capacity_;
}
- CHECK(size_ >= 0);
}
// Shrink the space by removing available bytes. Since shrinking is done
// during sweeping, bytes have been marked as being in use (part of the size)
// and are hereby freed.
- void ShrinkSpace(int size_in_bytes) {
- capacity_ -= size_in_bytes;
- size_ -= size_in_bytes;
- CHECK_GE(size_, 0);
+ void ShrinkSpace(size_t bytes) {
+ DCHECK_GE(capacity_, bytes);
+ DCHECK_GE(size_, bytes);
+ capacity_ -= bytes;
+ size_ -= bytes;
+ }
+
+ void AllocateBytes(size_t bytes) {
+ DCHECK_GE(size_ + bytes, size_);
+ size_ += bytes;
+ }
+
+ void DeallocateBytes(size_t bytes) {
+ DCHECK_GE(size_, bytes);
+ size_ -= bytes;
}
- // Allocate from available bytes (available -> size).
- void AllocateBytes(intptr_t size_in_bytes) {
- size_ += size_in_bytes;
- CHECK_GE(size_, 0);
+ void DecreaseCapacity(size_t bytes) {
+ DCHECK_GE(capacity_, bytes);
+ DCHECK_GE(capacity_ - bytes, size_);
+ capacity_ -= bytes;
}
- // Free allocated bytes, making them available (size -> available).
- void DeallocateBytes(intptr_t size_in_bytes) {
- size_ -= size_in_bytes;
- CHECK_GE(size_, 0);
+ void IncreaseCapacity(size_t bytes) {
+ DCHECK_GE(capacity_ + bytes, capacity_);
+ capacity_ += bytes;
}
- // Merge {other} into {this}.
+ // Merge |other| into |this|.
void Merge(const AllocationStats& other) {
+ DCHECK_GE(capacity_ + other.capacity_, capacity_);
+ DCHECK_GE(size_ + other.size_, size_);
capacity_ += other.capacity_;
size_ += other.size_;
if (other.max_capacity_ > max_capacity_) {
max_capacity_ = other.max_capacity_;
}
- CHECK_GE(size_, 0);
}
- void DecreaseCapacity(intptr_t size_in_bytes) {
- capacity_ -= size_in_bytes;
- CHECK_GE(capacity_, 0);
- CHECK_GE(capacity_, size_);
- }
-
- void IncreaseCapacity(intptr_t size_in_bytes) { capacity_ += size_in_bytes; }
-
private:
// |capacity_|: The number of object-area bytes (i.e., not including page
// bookkeeping structures) currently in the space.
- intptr_t capacity_;
+ size_t capacity_;
// |max_capacity_|: The maximum capacity ever observed.
- intptr_t max_capacity_;
+ size_t max_capacity_;
// |size_|: The number of allocated bytes.
- intptr_t size_;
+ size_t size_;
};
// A free list maintaining free blocks of memory. The free list is organized in
@@ -2120,7 +2121,7 @@ class PagedSpace : public Space {
void Allocate(int bytes) { accounting_stats_.AllocateBytes(bytes); }
- void IncreaseCapacity(int size);
+ void IncreaseCapacity(size_t bytes);
// Releases an unused page and shrinks the space.
void ReleasePage(Page* page);
« no previous file with comments | « no previous file | src/heap/spaces.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698