1.1 --- a/src/share/vm/opto/subnode.cpp Tue Mar 24 12:19:47 2009 -0700 1.2 +++ b/src/share/vm/opto/subnode.cpp Tue Mar 24 15:09:52 2009 -0700 1.3 @@ -639,8 +639,8 @@ 1.4 int kps = (p0->isa_klassptr()?1:0) + (p1->isa_klassptr()?1:0); 1.5 if (klass0 && klass1 && 1.6 kps != 1 && // both or neither are klass pointers 1.7 - !klass0->is_interface() && // do not trust interfaces 1.8 - !klass1->is_interface()) { 1.9 + klass0->is_loaded() && !klass0->is_interface() && // do not trust interfaces 1.10 + klass1->is_loaded() && !klass1->is_interface()) { 1.11 bool unrelated_classes = false; 1.12 // See if neither subclasses the other, or if the class on top 1.13 // is precise. In either of these cases, the compare is known