-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathjdk15_cds.patch
35 lines (31 loc) · 1.45 KB
/
jdk15_cds.patch
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
diff --git a/src/hotspot/share/memory/metaspaceShared.cpp b/src/hotspot/share/memory/metaspaceShared.cpp
index 57a97b5c2..448156667 100644
--- a/src/hotspot/share/memory/metaspaceShared.cpp
+++ b/src/hotspot/share/memory/metaspaceShared.cpp
@@ -1311,7 +1311,7 @@ public:
address obj = ref->obj();
int bytes = ref->size() * BytesPerWord;
char* p;
- size_t alignment = BytesPerWord;
+ size_t alignment = BytesPerLong;
char* oldtop;
char* newtop;
@@ -1329,7 +1329,7 @@ public:
Klass* klass = (Klass*)obj;
if (klass->is_instance_klass()) {
SystemDictionaryShared::validate_before_archiving(InstanceKlass::cast(klass));
- _rw_region.allocate(sizeof(address), BytesPerWord);
+ _rw_region.allocate(sizeof(u8), alignment);
}
}
p = _rw_region.allocate(bytes, alignment);
diff --git a/src/hotspot/share/memory/metaspaceShared.hpp b/src/hotspot/share/memory/metaspaceShared.hpp
index 326522c4a..4c5e54b4d 100644
--- a/src/hotspot/share/memory/metaspaceShared.hpp
+++ b/src/hotspot/share/memory/metaspaceShared.hpp
@@ -71,7 +71,7 @@ public:
DumpRegion(const char* name) : _name(name), _base(NULL), _top(NULL), _end(NULL), _is_packed(false) {}
char* expand_top_to(char* newtop);
- char* allocate(size_t num_bytes, size_t alignment=BytesPerWord);
+ char* allocate(size_t num_bytes, size_t alignment=BytesPerLong);
void append_intptr_t(intptr_t n, bool need_to_mark = false);