< prev index next >

src/hotspot/share/classfile/classFileParser.cpp

Print this page

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




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

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