src/hotspot/share/oops/constantPool.cpp
changeset 50971 34872a21af82
parent 49658 8237a91c1cca
child 51338 aa3bfacc912c
equal deleted inserted replaced
50970:d30b4459b71b 50971:34872a21af82
   803     }
   803     }
   804   } else {
   804   } else {
   805     // some other thread put this in error state
   805     // some other thread put this in error state
   806     throw_resolution_error(this_cp, which, CHECK);
   806     throw_resolution_error(this_cp, which, CHECK);
   807   }
   807   }
       
   808 }
       
   809 
       
   810 constantTag ConstantPool::constant_tag_at(int which) {
       
   811   constantTag tag = tag_at(which);
       
   812   if (tag.is_dynamic_constant() ||
       
   813       tag.is_dynamic_constant_in_error()) {
       
   814     // have to look at the signature for this one
       
   815     Symbol* constant_type = uncached_signature_ref_at(which);
       
   816     return constantTag::ofBasicType(FieldType::basic_type(constant_type));
       
   817   }
       
   818   return tag;
   808 }
   819 }
   809 
   820 
   810 BasicType ConstantPool::basic_type_for_constant_at(int which) {
   821 BasicType ConstantPool::basic_type_for_constant_at(int which) {
   811   constantTag tag = tag_at(which);
   822   constantTag tag = tag_at(which);
   812   if (tag.is_dynamic_constant() ||
   823   if (tag.is_dynamic_constant() ||