< prev index next >

src/hotspot/share/classfile/classFileParser.cpp

Print this page

4927   // Report error
4928   throwIllegalSignature("Method", name, signature, THREAD);
4929   return 0;
4930 }
4931 
4932 int ClassFileParser::static_field_size() const {
4933   assert(_field_info != nullptr, "invariant");
4934   return _field_info->_static_field_size;
4935 }
4936 
4937 int ClassFileParser::total_oop_map_count() const {
4938   assert(_field_info != nullptr, "invariant");
4939   return _field_info->oop_map_blocks->_nonstatic_oop_map_count;
4940 }
4941 
4942 jint ClassFileParser::layout_size() const {
4943   assert(_field_info != nullptr, "invariant");
4944   return _field_info->_instance_size;
4945 }
4946 




4947 static void check_methods_for_intrinsics(const InstanceKlass* ik,
4948                                          const Array<Method*>* methods) {
4949   assert(ik != nullptr, "invariant");
4950   assert(methods != nullptr, "invariant");
4951 
4952   // Set up Method*::intrinsic_id as soon as we know the names of methods.
4953   // (We used to do this lazily, but now we query it in Rewriter,
4954   // which is eagerly done for every method, so we might as well do it now,
4955   // when everything is fresh in memory.)
4956   const vmSymbolID klass_id = Method::klass_id_for_intrinsics(ik);
4957 
4958   if (klass_id != vmSymbolID::NO_SID) {
4959     for (int j = 0; j < methods->length(); ++j) {
4960       Method* method = methods->at(j);
4961       method->init_intrinsic_id(klass_id);
4962 
4963       if (CheckIntrinsics) {
4964         // Check if an intrinsic is defined for method 'method',
4965         // but the method is not annotated with @IntrinsicCandidate.
4966         if (method->intrinsic_id() != vmIntrinsics::_none &&

4927   // Report error
4928   throwIllegalSignature("Method", name, signature, THREAD);
4929   return 0;
4930 }
4931 
4932 int ClassFileParser::static_field_size() const {
4933   assert(_field_info != nullptr, "invariant");
4934   return _field_info->_static_field_size;
4935 }
4936 
4937 int ClassFileParser::total_oop_map_count() const {
4938   assert(_field_info != nullptr, "invariant");
4939   return _field_info->oop_map_blocks->_nonstatic_oop_map_count;
4940 }
4941 
4942 jint ClassFileParser::layout_size() const {
4943   assert(_field_info != nullptr, "invariant");
4944   return _field_info->_instance_size;
4945 }
4946 
4947 int ClassFileParser::hash_offset() const {
4948   return _field_info->_hash_offset;
4949 }
4950 
4951 static void check_methods_for_intrinsics(const InstanceKlass* ik,
4952                                          const Array<Method*>* methods) {
4953   assert(ik != nullptr, "invariant");
4954   assert(methods != nullptr, "invariant");
4955 
4956   // Set up Method*::intrinsic_id as soon as we know the names of methods.
4957   // (We used to do this lazily, but now we query it in Rewriter,
4958   // which is eagerly done for every method, so we might as well do it now,
4959   // when everything is fresh in memory.)
4960   const vmSymbolID klass_id = Method::klass_id_for_intrinsics(ik);
4961 
4962   if (klass_id != vmSymbolID::NO_SID) {
4963     for (int j = 0; j < methods->length(); ++j) {
4964       Method* method = methods->at(j);
4965       method->init_intrinsic_id(klass_id);
4966 
4967       if (CheckIntrinsics) {
4968         // Check if an intrinsic is defined for method 'method',
4969         // but the method is not annotated with @IntrinsicCandidate.
4970         if (method->intrinsic_id() != vmIntrinsics::_none &&
< prev index next >