ZGC: Remove usage of arrayOopDesc::max_array_length_in_bytes
Stefan Karlsson
stefan.karlsson at oracle.com
Wed May 16 12:35:30 UTC 2018
Hi all,
The following UPSTREAM patch is incorrect and the function is weirdly named:
http://hg.openjdk.java.net/zgc/zgc/rev/32baead3cec8
Instead of fixing it I propose that we delete that patch and replace the
single usage of max_array_length_in_bytes with:
diff --git a/src/hotspot/share/gc/z/zMark.cpp
b/src/hotspot/share/gc/z/zMark.cpp
--- a/src/hotspot/share/gc/z/zMark.cpp
+++ b/src/hotspot/share/gc/z/zMark.cpp
@@ -194,7 +194,7 @@
}
void ZMark::follow_large_array(uintptr_t addr, size_t size, bool
finalizable) {
- assert(size <= arrayOopDesc::max_array_length_in_bytes(T_OBJECT),
"Too large");
+ assert(size <= (size_t)arrayOopDesc::max_array_length(T_OBJECT) *
oopSize, "Too large");
assert(size > ZMarkPartialArrayMinSize, "Too small, should not be
split");
const uintptr_t start = addr;
const uintptr_t end = start + size;
Thanks,
StefanK
More information about the zgc-dev
mailing list