hotspot/src/share/vm/oops/cpCache.hpp
changeset 46746 ea379ebb9447
parent 46727 6e4a84748e2c
child 46810 7dad333205cd
equal deleted inserted replaced
46745:f7b9bb98bb72 46746:ea379ebb9447
   402 
   402 
   403 class ConstantPoolCache: public MetaspaceObj {
   403 class ConstantPoolCache: public MetaspaceObj {
   404   friend class VMStructs;
   404   friend class VMStructs;
   405   friend class MetadataFactory;
   405   friend class MetadataFactory;
   406  private:
   406  private:
       
   407   // If you add a new field that points to any metaspace object, you
       
   408   // must add this field to ConstantPoolCache::metaspace_pointers_do().
   407   int             _length;
   409   int             _length;
   408   ConstantPool*   _constant_pool;          // the corresponding constant pool
   410   ConstantPool*   _constant_pool;          // the corresponding constant pool
   409 
   411 
   410   // The following fields need to be modified at runtime, so they cannot be
   412   // The following fields need to be modified at runtime, so they cannot be
   411   // stored in the ConstantPool, which is read-only.
   413   // stored in the ConstantPool, which is read-only.
   441                                      const intStack& invokedynamic_cp_cache_map,
   443                                      const intStack& invokedynamic_cp_cache_map,
   442                                      const intStack& invokedynamic_references_map, TRAPS);
   444                                      const intStack& invokedynamic_references_map, TRAPS);
   443   bool is_constantPoolCache() const { return true; }
   445   bool is_constantPoolCache() const { return true; }
   444 
   446 
   445   int length() const                             { return _length; }
   447   int length() const                             { return _length; }
       
   448   void metaspace_pointers_do(MetaspaceClosure* it);
       
   449   MetaspaceObj::Type type() const                { return ConstantPoolCacheType; }
   446 
   450 
   447   jobject resolved_references()           { return _resolved_references; }
   451   jobject resolved_references()           { return _resolved_references; }
   448   void set_resolved_references(jobject s) { _resolved_references = s; }
   452   void set_resolved_references(jobject s) { _resolved_references = s; }
   449   Array<u2>* reference_map() const        { return _reference_map; }
   453   Array<u2>* reference_map() const        { return _reference_map; }
   450   void set_reference_map(Array<u2>* o)    { _reference_map = o; }
   454   void set_reference_map(Array<u2>* o)    { _reference_map = o; }