changeset 3997:69e0b33357cc

8000459: assert(java_lang_String::is_instance(entry)) failure with various mlvm tests. Summary: The assert in VM_HeapWalkOperation::iterate_over_class() needs to be augmented for pseudo-string. Reviewed-by: jrose, dholmes, sspitsyn, coleenp
author jiangli
date Wed, 10 Oct 2012 15:06:55 -0400
parents 9c930c24f9b0
children 16f3116e792d
files src/share/vm/prims/jvmtiTagMap.cpp
diffstat 1 files changed, 2 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/src/share/vm/prims/jvmtiTagMap.cpp	Thu Sep 13 21:20:26 2012 +0200
+++ b/src/share/vm/prims/jvmtiTagMap.cpp	Wed Oct 10 15:06:55 2012 -0400
@@ -2925,7 +2925,8 @@
           oop entry;
           if (tag.is_string()) {
             entry = pool->resolved_string_at(i);
-            assert(java_lang_String::is_instance(entry), "must be string");
+            assert(java_lang_String::is_instance(entry) ||
+                   pool->is_pseudo_string_at(i), "must be string");
           } else {
             entry = Klass::cast(pool->resolved_klass_at(i))->java_mirror();
           }