< prev index next >
src/hotspot/share/prims/jvmtiGetLoadedClasses.cpp
Print this page
*** 20,29 ****
--- 20,30 ----
* or visit www.oracle.com if you need additional information or have any
* questions.
*
*/
+ #include <oops/valueKlass.hpp>
#include "precompiled.hpp"
#include "classfile/classLoaderDataGraph.hpp"
#include "classfile/dictionary.hpp"
#include "classfile/systemDictionary.hpp"
#include "gc/shared/collectedHeap.hpp"
*** 72,84 ****
// Collect all jclasses
_classStack.push((jclass) _env->jni_reference(Handle(_cur_thread, k->java_mirror())));
if (_dictionary_walk) {
// Collect array classes this way when walking the dictionary (because array classes are
// not in the dictionary).
! for (Klass* l = k->array_klass_or_null(); l != NULL; l = l->array_klass_or_null()) {
_classStack.push((jclass) _env->jni_reference(Handle(_cur_thread, l->java_mirror())));
}
}
}
jvmtiError get_result(JvmtiEnv *env, jint* classCountPtr, jclass** classesPtr) {
// Return results by extracting the collected contents into a list
--- 73,86 ----
// Collect all jclasses
_classStack.push((jclass) _env->jni_reference(Handle(_cur_thread, k->java_mirror())));
if (_dictionary_walk) {
// Collect array classes this way when walking the dictionary (because array classes are
// not in the dictionary).
! for (Klass* l = k->array_klass_or_null(ArrayStorageProperties::empty); l != NULL; l = l->array_klass_or_null(ArrayStorageProperties::empty)) {
_classStack.push((jclass) _env->jni_reference(Handle(_cur_thread, l->java_mirror())));
}
+ // CMH flat arrays (ValueKlass)
}
}
jvmtiError get_result(JvmtiEnv *env, jint* classCountPtr, jclass** classesPtr) {
// Return results by extracting the collected contents into a list
< prev index next >