Index: src/snapshot/snapshot.h |
diff --git a/src/snapshot/snapshot.h b/src/snapshot/snapshot.h |
index 49a60926dcbfc4f90d114c6104888f9dea74f674..a541592feeea8061670ce21e1964a2244f49c7d0 100644 |
--- a/src/snapshot/snapshot.h |
+++ b/src/snapshot/snapshot.h |
@@ -67,6 +67,9 @@ |
static bool EmbedsScript(Isolate* isolate); |
+ static uint32_t SizeOfFirstPage(Isolate* isolate, AllocationSpace space); |
+ |
+ |
// To be implemented by the snapshot source. |
static const v8::StartupData* DefaultSnapshotBlob(); |
@@ -85,16 +88,21 @@ |
int index); |
// Snapshot blob layout: |
- // [0] number of contexts N |
- // [1] offset to context 0 |
- // [2] offset to context 1 |
+ // [0 - 5] pre-calculated first page sizes for paged spaces |
+ // [6] number of contexts N |
+ // [7] offset to context 0 |
+ // [8] offset to context 1 |
// ... |
// ... offset to context N - 1 |
// ... startup snapshot data |
// ... context 0 snapshot data |
// ... context 1 snapshot data |
- static const int kNumberOfContextsOffset = 0; |
+ static const int kNumPagedSpaces = LAST_PAGED_SPACE - FIRST_PAGED_SPACE + 1; |
+ |
+ static const int kFirstPageSizesOffset = 0; |
+ static const int kNumberOfContextsOffset = |
+ kFirstPageSizesOffset + kNumPagedSpaces * kInt32Size; |
static const int kFirstContextOffsetOffset = |
kNumberOfContextsOffset + kInt32Size; |