--- a/src/hotspot/share/include/cds.h Thu Oct 17 20:27:44 2019 +0100
+++ b/src/hotspot/share/include/cds.h Thu Oct 17 20:53:35 2019 +0100
@@ -33,25 +33,26 @@
//
// Also, this is a C header file. Do not use C++ here.
-#define NUM_CDS_REGIONS 9
+#define NUM_CDS_REGIONS 8 // this must be the same as MetaspaceShared::n_regions
#define CDS_ARCHIVE_MAGIC 0xf00baba2
#define CDS_DYNAMIC_ARCHIVE_MAGIC 0xf00baba8
-#define CURRENT_CDS_ARCHIVE_VERSION 5
+#define CURRENT_CDS_ARCHIVE_VERSION 8
#define INVALID_CDS_ARCHIVE_VERSION -1
struct CDSFileMapRegion {
- int _crc; // crc checksum of the current space
- size_t _file_offset; // sizeof(this) rounded to vm page size
+ int _crc; // crc checksum of the current space
+ size_t _file_offset; // sizeof(this) rounded to vm page size
union {
- char* _base; // copy-on-write base address
- size_t _offset; // offset from the compressed oop encoding base, only used
- // by archive heap space
+ char* _base; // copy-on-write base address
+ size_t _offset; // offset from the compressed oop encoding base, only used
+ // by archive heap space
} _addr;
- size_t _used; // for setting space top on read
- int _read_only; // read only space?
- int _allow_exec; // executable code in space?
- void* _oopmap; // bitmap for relocating embedded oops
+ size_t _used; // for setting space top on read
+ int _read_only; // read only space?
+ int _allow_exec; // executable code in space?
+ void* _oopmap; // bitmap for relocating embedded oops
size_t _oopmap_size_in_bits;
+ int _is_heap_region; // used in debug build only.
};
struct CDSFileMapHeaderBase {