changeset 706:90a66aa50514

6820510: assertion failure with unloaded class in subnode.cpp Reviewed-by: kvn
author never
date Tue, 24 Mar 2009 15:09:52 -0700
parents 78af5ae8e731
children c7bbabdcadfb d0994e5bebce
files src/share/vm/opto/subnode.cpp
diffstat 1 files changed, 2 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/src/share/vm/opto/subnode.cpp	Tue Mar 24 12:19:47 2009 -0700
+++ b/src/share/vm/opto/subnode.cpp	Tue Mar 24 15:09:52 2009 -0700
@@ -639,8 +639,8 @@
     int kps = (p0->isa_klassptr()?1:0) + (p1->isa_klassptr()?1:0);
     if (klass0 && klass1 &&
         kps != 1 &&             // both or neither are klass pointers
-        !klass0->is_interface() && // do not trust interfaces
-        !klass1->is_interface()) {
+        klass0->is_loaded() && !klass0->is_interface() && // do not trust interfaces
+        klass1->is_loaded() && !klass1->is_interface()) {
       bool unrelated_classes = false;
       // See if neither subclasses the other, or if the class on top
       // is precise.  In either of these cases, the compare is known