comparison src/share/vm/classfile/javaClasses.cpp @ 6983:070d523b96a7

8001471: Klass::cast() does nothing Summary: Remove function Klass::cast() and calls to it. Reviewed-by: dholmes, coleenp
author hseigel
date Mon, 12 Nov 2012 16:15:05 -0500
parents 18fb7da42534
children 80e866b1d053
comparison
equal deleted inserted replaced
6981:8c413497f434 6983:070d523b96a7
543 comp_mirror = Universe::java_mirror(type); 543 comp_mirror = Universe::java_mirror(type);
544 } else { 544 } else {
545 assert(k->oop_is_objArray(), "Must be"); 545 assert(k->oop_is_objArray(), "Must be");
546 Klass* element_klass = ObjArrayKlass::cast(k())->element_klass(); 546 Klass* element_klass = ObjArrayKlass::cast(k())->element_klass();
547 assert(element_klass != NULL, "Must have an element klass"); 547 assert(element_klass != NULL, "Must have an element klass");
548 comp_mirror = Klass::cast(element_klass)->java_mirror(); 548 comp_mirror = element_klass->java_mirror();
549 } 549 }
550 assert(comp_mirror.not_null(), "must have a mirror"); 550 assert(comp_mirror.not_null(), "must have a mirror");
551 551
552 // Two-way link between the array klass and its component mirror: 552 // Two-way link between the array klass and its component mirror:
553 ArrayKlass::cast(k())->set_component_mirror(comp_mirror()); 553 ArrayKlass::cast(k())->set_component_mirror(comp_mirror());
626 bool is_instance = false; 626 bool is_instance = false;
627 if (is_primitive(java_class)) { 627 if (is_primitive(java_class)) {
628 name = vmSymbols::type_signature(primitive_type(java_class)); 628 name = vmSymbols::type_signature(primitive_type(java_class));
629 } else { 629 } else {
630 Klass* k = as_Klass(java_class); 630 Klass* k = as_Klass(java_class);
631 is_instance = Klass::cast(k)->oop_is_instance(); 631 is_instance = k->oop_is_instance();
632 name = Klass::cast(k)->name(); 632 name = k->name();
633 } 633 }
634 if (name == NULL) { 634 if (name == NULL) {
635 st->print("<null>"); 635 st->print("<null>");
636 return; 636 return;
637 } 637 }
649 // the refcount, so make adjustment here and below for symbols returned 649 // the refcount, so make adjustment here and below for symbols returned
650 // that are not created or incremented due to a successful lookup. 650 // that are not created or incremented due to a successful lookup.
651 name->increment_refcount(); 651 name->increment_refcount();
652 } else { 652 } else {
653 Klass* k = as_Klass(java_class); 653 Klass* k = as_Klass(java_class);
654 if (!Klass::cast(k)->oop_is_instance()) { 654 if (!k->oop_is_instance()) {
655 name = Klass::cast(k)->name(); 655 name = k->name();
656 name->increment_refcount(); 656 name->increment_refcount();
657 } else { 657 } else {
658 ResourceMark rm; 658 ResourceMark rm;
659 const char* sigstr = Klass::cast(k)->signature_name(); 659 const char* sigstr = k->signature_name();
660 int siglen = (int) strlen(sigstr); 660 int siglen = (int) strlen(sigstr);
661 if (!intern_if_not_found) { 661 if (!intern_if_not_found) {
662 name = SymbolTable::probe(sigstr, siglen); 662 name = SymbolTable::probe(sigstr, siglen);
663 } else { 663 } else {
664 name = SymbolTable::new_symbol(sigstr, siglen, THREAD); 664 name = SymbolTable::new_symbol(sigstr, siglen, THREAD);
669 } 669 }
670 670
671 671
672 Klass* java_lang_Class::array_klass(oop java_class) { 672 Klass* java_lang_Class::array_klass(oop java_class) {
673 Klass* k = ((Klass*)java_class->metadata_field(_array_klass_offset)); 673 Klass* k = ((Klass*)java_class->metadata_field(_array_klass_offset));
674 assert(k == NULL || k->is_klass() && Klass::cast(k)->oop_is_array(), "should be array klass"); 674 assert(k == NULL || k->is_klass() && k->oop_is_array(), "should be array klass");
675 return k; 675 return k;
676 } 676 }
677 677
678 678
679 void java_lang_Class::set_array_klass(oop java_class, Klass* klass) { 679 void java_lang_Class::set_array_klass(oop java_class, Klass* klass) {
680 assert(klass->is_klass() && Klass::cast(klass)->oop_is_array(), "should be array klass"); 680 assert(klass->is_klass() && klass->oop_is_array(), "should be array klass");
681 java_class->metadata_field_put(_array_klass_offset, klass); 681 java_class->metadata_field_put(_array_klass_offset, klass);
682 } 682 }
683 683
684 684
685 Method* java_lang_Class::resolved_constructor(oop java_class) { 685 Method* java_lang_Class::resolved_constructor(oop java_class) {