Mercurial > hg > truffle
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) { |