equal
deleted
inserted
replaced
884 TempNewSymbol field_name = SymbolTable::new_symbol(info->field_name, THREAD); |
884 TempNewSymbol field_name = SymbolTable::new_symbol(info->field_name, THREAD); |
885 |
885 |
886 Klass* k = SystemDictionary::resolve_or_null(klass_name, THREAD); |
886 Klass* k = SystemDictionary::resolve_or_null(klass_name, THREAD); |
887 assert(k != NULL && !HAS_PENDING_EXCEPTION, "class must exist"); |
887 assert(k != NULL && !HAS_PENDING_EXCEPTION, "class must exist"); |
888 InstanceKlass* ik = InstanceKlass::cast(k); |
888 InstanceKlass* ik = InstanceKlass::cast(k); |
|
889 assert(InstanceKlass::cast(ik)->is_shared_boot_class(), |
|
890 "Only support boot classes"); |
|
891 ik->initialize(THREAD); |
|
892 guarantee(!HAS_PENDING_EXCEPTION, "exception in initialize"); |
889 |
893 |
890 ArchivableStaticFieldFinder finder(ik, field_name); |
894 ArchivableStaticFieldFinder finder(ik, field_name); |
891 ik->do_local_static_fields(&finder); |
895 ik->do_local_static_fields(&finder); |
892 assert(finder.found(), "field must exist"); |
896 assert(finder.found(), "field must exist"); |
893 |
897 |