< prev index next >

src/hotspot/share/classfile/classFileParser.cpp

Print this page

4912   // Report error
4913   throwIllegalSignature("Method", name, signature, THREAD);
4914   return 0;
4915 }
4916 
4917 int ClassFileParser::static_field_size() const {
4918   assert(_field_info != nullptr, "invariant");
4919   return _field_info->_static_field_size;
4920 }
4921 
4922 int ClassFileParser::total_oop_map_count() const {
4923   assert(_field_info != nullptr, "invariant");
4924   return _field_info->oop_map_blocks->_nonstatic_oop_map_count;
4925 }
4926 
4927 jint ClassFileParser::layout_size() const {
4928   assert(_field_info != nullptr, "invariant");
4929   return _field_info->_instance_size;
4930 }
4931 




4932 static void check_methods_for_intrinsics(const InstanceKlass* ik,
4933                                          const Array<Method*>* methods) {
4934   assert(ik != nullptr, "invariant");
4935   assert(methods != nullptr, "invariant");
4936 
4937   // Set up Method*::intrinsic_id as soon as we know the names of methods.
4938   // (We used to do this lazily, but now we query it in Rewriter,
4939   // which is eagerly done for every method, so we might as well do it now,
4940   // when everything is fresh in memory.)
4941   const vmSymbolID klass_id = Method::klass_id_for_intrinsics(ik);
4942 
4943   if (klass_id != vmSymbolID::NO_SID) {
4944     for (int j = 0; j < methods->length(); ++j) {
4945       Method* method = methods->at(j);
4946       method->init_intrinsic_id(klass_id);
4947 
4948       if (CheckIntrinsics) {
4949         // Check if an intrinsic is defined for method 'method',
4950         // but the method is not annotated with @IntrinsicCandidate.
4951         if (method->intrinsic_id() != vmIntrinsics::_none &&

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