equal
deleted
inserted
replaced
537 get_symbol(klass_name), |
537 get_symbol(klass_name), |
538 false); |
538 false); |
539 // Calculate accessibility the hard way. |
539 // Calculate accessibility the hard way. |
540 if (!k->is_loaded()) { |
540 if (!k->is_loaded()) { |
541 is_accessible = false; |
541 is_accessible = false; |
542 } else if (!oopDesc::equals(k->loader(), accessor->loader()) && |
542 } else if (k->loader() != accessor->loader() && |
543 get_klass_by_name_impl(accessor, cpool, k->name(), true) == NULL) { |
543 get_klass_by_name_impl(accessor, cpool, k->name(), true) == NULL) { |
544 // Loaded only remotely. Not linked yet. |
544 // Loaded only remotely. Not linked yet. |
545 is_accessible = false; |
545 is_accessible = false; |
546 } else { |
546 } else { |
547 // Linked locally, and we must also check public/private, etc. |
547 // Linked locally, and we must also check public/private, etc. |
588 if (cache_index >= 0) { |
588 if (cache_index >= 0) { |
589 assert(index < 0, "only one kind of index at a time"); |
589 assert(index < 0, "only one kind of index at a time"); |
590 index = cpool->object_to_cp_index(cache_index); |
590 index = cpool->object_to_cp_index(cache_index); |
591 oop obj = cpool->resolved_references()->obj_at(cache_index); |
591 oop obj = cpool->resolved_references()->obj_at(cache_index); |
592 if (obj != NULL) { |
592 if (obj != NULL) { |
593 if (oopDesc::equals(obj, Universe::the_null_sentinel())) { |
593 if (obj == Universe::the_null_sentinel()) { |
594 return ciConstant(T_OBJECT, get_object(NULL)); |
594 return ciConstant(T_OBJECT, get_object(NULL)); |
595 } |
595 } |
596 BasicType bt = T_OBJECT; |
596 BasicType bt = T_OBJECT; |
597 if (cpool->tag_at(index).is_dynamic_constant()) |
597 if (cpool->tag_at(index).is_dynamic_constant()) |
598 bt = FieldType::basic_type(cpool->uncached_signature_ref_at(index)); |
598 bt = FieldType::basic_type(cpool->uncached_signature_ref_at(index)); |