diff -r f7b9bb98bb72 -r ea379ebb9447 hotspot/src/share/vm/oops/cpCache.cpp --- a/hotspot/src/share/vm/oops/cpCache.cpp Sat Jul 22 15:54:27 2017 -0400 +++ b/hotspot/src/share/vm/oops/cpCache.cpp Wed Aug 02 18:06:38 2017 -0700 @@ -26,6 +26,7 @@ #include "interpreter/interpreter.hpp" #include "interpreter/rewriter.hpp" #include "logging/log.hpp" +#include "memory/metaspaceClosure.hpp" #include "memory/resourceArea.hpp" #include "memory/universe.inline.hpp" #include "oops/cpCache.hpp" @@ -566,7 +567,7 @@ const int length = index_map.length() + invokedynamic_index_map.length(); int size = ConstantPoolCache::size(length); - return new (loader_data, size, false, MetaspaceObj::ConstantPoolCacheType, THREAD) + return new (loader_data, size, MetaspaceObj::ConstantPoolCacheType, THREAD) ConstantPoolCache(length, index_map, invokedynamic_index_map, invokedynamic_map); } @@ -652,6 +653,11 @@ } #endif // INCLUDE_JVMTI +void ConstantPoolCache::metaspace_pointers_do(MetaspaceClosure* it) { + log_trace(cds)("Iter(ConstantPoolCache): %p", this); + it->push(&_constant_pool); + it->push(&_reference_map); +} // Printing