| Index: src/spaces.h
|
| ===================================================================
|
| --- src/spaces.h (revision 3342)
|
| +++ src/spaces.h (working copy)
|
| @@ -440,6 +440,11 @@
|
| // and false otherwise.
|
| static bool UncommitBlock(Address start, size_t size);
|
|
|
| + // Give OS a hint that data of this contiguous block of memory are no longer
|
| + // needed and could be discarded. This does NOT uncommit the block though.
|
| + static inline bool ResetBlock(Address start, size_t size,
|
| + Executability executable);
|
| +
|
| // Attempts to allocate the requested (non-zero) number of pages from the
|
| // OS. Fewer pages might be allocated than requested. If it fails to
|
| // allocate memory for the OS or cannot allocate a single page, this
|
| @@ -1130,6 +1135,7 @@
|
| bool is_committed() { return committed_; }
|
| bool Commit();
|
| bool Uncommit();
|
| + inline bool Reset();
|
|
|
| #ifdef DEBUG
|
| virtual void Print();
|
| @@ -1389,6 +1395,10 @@
|
| return from_space_.Uncommit();
|
| }
|
|
|
| + bool ResetFromSpace() {
|
| + return from_space_.Reset();
|
| + }
|
| +
|
| private:
|
| // The semispaces.
|
| SemiSpace to_space_;
|
|
|