< prev index next >

src/hotspot/share/classfile/classFileParser.cpp

Print this page




5661          "sanity");
5662 
5663   assert(ik->is_instance_klass(), "sanity");
5664   assert(ik->size_helper() == _field_info->_instance_size, "sanity");
5665 
5666   // Fill in information already parsed
5667   ik->set_should_verify_class(_need_verify);
5668 
5669   // Not yet: supers are done below to support the new subtype-checking fields
5670   ik->set_nonstatic_field_size(_field_info->_nonstatic_field_size);
5671   ik->set_has_nonstatic_fields(_field_info->_has_nonstatic_fields);
5672   assert(_fac != NULL, "invariant");
5673   ik->set_static_oop_field_count(_fac->count[STATIC_OOP]);
5674 
5675   // this transfers ownership of a lot of arrays from
5676   // the parser onto the InstanceKlass*
5677   apply_parsed_class_metadata(ik, _java_fields_count, CHECK);
5678 
5679   // can only set dynamic nest-host after static nest information is set
5680   if (cl_inst_info.dynamic_nest_host() != NULL) {
5681     ik->set_nest_host(cl_inst_info.dynamic_nest_host(), CHECK);
5682   }
5683 
5684   // note that is not safe to use the fields in the parser from this point on
5685   assert(NULL == _cp, "invariant");
5686   assert(NULL == _fields, "invariant");
5687   assert(NULL == _methods, "invariant");
5688   assert(NULL == _inner_classes, "invariant");
5689   assert(NULL == _nest_members, "invariant");
5690   assert(NULL == _local_interfaces, "invariant");
5691   assert(NULL == _combined_annotations, "invariant");
5692   assert(NULL == _record_components, "invariant");
5693 
5694   if (_has_final_method) {
5695     ik->set_has_final_method();
5696   }
5697 
5698   ik->copy_method_ordering(_method_ordering, CHECK);
5699   // The InstanceKlass::_methods_jmethod_ids cache
5700   // is managed on the assumption that the initial cache
5701   // size is equal to the number of methods in the class. If




5661          "sanity");
5662 
5663   assert(ik->is_instance_klass(), "sanity");
5664   assert(ik->size_helper() == _field_info->_instance_size, "sanity");
5665 
5666   // Fill in information already parsed
5667   ik->set_should_verify_class(_need_verify);
5668 
5669   // Not yet: supers are done below to support the new subtype-checking fields
5670   ik->set_nonstatic_field_size(_field_info->_nonstatic_field_size);
5671   ik->set_has_nonstatic_fields(_field_info->_has_nonstatic_fields);
5672   assert(_fac != NULL, "invariant");
5673   ik->set_static_oop_field_count(_fac->count[STATIC_OOP]);
5674 
5675   // this transfers ownership of a lot of arrays from
5676   // the parser onto the InstanceKlass*
5677   apply_parsed_class_metadata(ik, _java_fields_count, CHECK);
5678 
5679   // can only set dynamic nest-host after static nest information is set
5680   if (cl_inst_info.dynamic_nest_host() != NULL) {
5681     ik->set_nest_host(cl_inst_info.dynamic_nest_host(), THREAD);
5682   }
5683 
5684   // note that is not safe to use the fields in the parser from this point on
5685   assert(NULL == _cp, "invariant");
5686   assert(NULL == _fields, "invariant");
5687   assert(NULL == _methods, "invariant");
5688   assert(NULL == _inner_classes, "invariant");
5689   assert(NULL == _nest_members, "invariant");
5690   assert(NULL == _local_interfaces, "invariant");
5691   assert(NULL == _combined_annotations, "invariant");
5692   assert(NULL == _record_components, "invariant");
5693 
5694   if (_has_final_method) {
5695     ik->set_has_final_method();
5696   }
5697 
5698   ik->copy_method_ordering(_method_ordering, CHECK);
5699   // The InstanceKlass::_methods_jmethod_ids cache
5700   // is managed on the assumption that the initial cache
5701   // size is equal to the number of methods in the class. If


< prev index next >