< prev index next >

src/hotspot/share/classfile/classFileParser.cpp

Print this page

4874   // Report error
4875   throwIllegalSignature("Method", name, signature, THREAD);
4876   return 0;
4877 }
4878 
4879 int ClassFileParser::static_field_size() const {
4880   assert(_field_info != nullptr, "invariant");
4881   return _field_info->_static_field_size;
4882 }
4883 
4884 int ClassFileParser::total_oop_map_count() const {
4885   assert(_field_info != nullptr, "invariant");
4886   return _field_info->oop_map_blocks->_nonstatic_oop_map_count;
4887 }
4888 
4889 jint ClassFileParser::layout_size() const {
4890   assert(_field_info != nullptr, "invariant");
4891   return _field_info->_instance_size;
4892 }
4893 




4894 static void check_methods_for_intrinsics(const InstanceKlass* ik,
4895                                          const Array<Method*>* methods) {
4896   assert(ik != nullptr, "invariant");
4897   assert(methods != nullptr, "invariant");
4898 
4899   // Set up Method*::intrinsic_id as soon as we know the names of methods.
4900   // (We used to do this lazily, but now we query it in Rewriter,
4901   // which is eagerly done for every method, so we might as well do it now,
4902   // when everything is fresh in memory.)
4903   const vmSymbolID klass_id = Method::klass_id_for_intrinsics(ik);
4904 
4905   if (klass_id != vmSymbolID::NO_SID) {
4906     for (int j = 0; j < methods->length(); ++j) {
4907       Method* method = methods->at(j);
4908       method->init_intrinsic_id(klass_id);
4909 
4910       if (CheckIntrinsics) {
4911         // Check if an intrinsic is defined for method 'method',
4912         // but the method is not annotated with @IntrinsicCandidate.
4913         if (method->intrinsic_id() != vmIntrinsics::_none &&

4874   // Report error
4875   throwIllegalSignature("Method", name, signature, THREAD);
4876   return 0;
4877 }
4878 
4879 int ClassFileParser::static_field_size() const {
4880   assert(_field_info != nullptr, "invariant");
4881   return _field_info->_static_field_size;
4882 }
4883 
4884 int ClassFileParser::total_oop_map_count() const {
4885   assert(_field_info != nullptr, "invariant");
4886   return _field_info->oop_map_blocks->_nonstatic_oop_map_count;
4887 }
4888 
4889 jint ClassFileParser::layout_size() const {
4890   assert(_field_info != nullptr, "invariant");
4891   return _field_info->_instance_size;
4892 }
4893 
4894 int ClassFileParser::hash_offset() const {
4895   return _field_info->_hash_offset;
4896 }
4897 
4898 static void check_methods_for_intrinsics(const InstanceKlass* ik,
4899                                          const Array<Method*>* methods) {
4900   assert(ik != nullptr, "invariant");
4901   assert(methods != nullptr, "invariant");
4902 
4903   // Set up Method*::intrinsic_id as soon as we know the names of methods.
4904   // (We used to do this lazily, but now we query it in Rewriter,
4905   // which is eagerly done for every method, so we might as well do it now,
4906   // when everything is fresh in memory.)
4907   const vmSymbolID klass_id = Method::klass_id_for_intrinsics(ik);
4908 
4909   if (klass_id != vmSymbolID::NO_SID) {
4910     for (int j = 0; j < methods->length(); ++j) {
4911       Method* method = methods->at(j);
4912       method->init_intrinsic_id(klass_id);
4913 
4914       if (CheckIntrinsics) {
4915         // Check if an intrinsic is defined for method 'method',
4916         // but the method is not annotated with @IntrinsicCandidate.
4917         if (method->intrinsic_id() != vmIntrinsics::_none &&
< prev index next >