< prev index next >

src/hotspot/share/ci/ciInstanceKlass.hpp

Print this page
rev 53307 : Backport Shenadoah GC


 185 
 186   ciInstanceKlass* get_canonical_holder(int offset);
 187   ciField* get_field_by_offset(int field_offset, bool is_static);
 188   ciField* get_field_by_name(ciSymbol* name, ciSymbol* signature, bool is_static);
 189 
 190   // total number of nonstatic fields (including inherited):
 191   int nof_nonstatic_fields() {
 192     if (_nonstatic_fields == NULL)
 193       return compute_nonstatic_fields();
 194     else
 195       return _nonstatic_fields->length();
 196   }
 197 
 198   bool has_injected_fields() {
 199     if (_has_injected_fields == -1) {
 200       compute_injected_fields();
 201     }
 202     return _has_injected_fields > 0 ? true : false;
 203   }
 204 


 205   // nth nonstatic field (presented by ascending address)
 206   ciField* nonstatic_field_at(int i) {
 207     assert(_nonstatic_fields != NULL, "");
 208     return _nonstatic_fields->at(i);
 209   }
 210 
 211   ciInstanceKlass* unique_concrete_subklass();
 212   bool has_finalizable_subclass();
 213 
 214   bool contains_field_offset(int offset) {
 215     return instanceOopDesc::contains_field_offset(offset, nonstatic_field_size());
 216   }
 217 
 218   // Get the instance of java.lang.Class corresponding to
 219   // this klass.  This instance is used for locking of
 220   // synchronized static methods of this klass.
 221   ciInstance*            java_mirror();
 222 
 223   // Java access flags
 224   bool is_public      () { return flags().is_public(); }




 185 
 186   ciInstanceKlass* get_canonical_holder(int offset);
 187   ciField* get_field_by_offset(int field_offset, bool is_static);
 188   ciField* get_field_by_name(ciSymbol* name, ciSymbol* signature, bool is_static);
 189 
 190   // total number of nonstatic fields (including inherited):
 191   int nof_nonstatic_fields() {
 192     if (_nonstatic_fields == NULL)
 193       return compute_nonstatic_fields();
 194     else
 195       return _nonstatic_fields->length();
 196   }
 197 
 198   bool has_injected_fields() {
 199     if (_has_injected_fields == -1) {
 200       compute_injected_fields();
 201     }
 202     return _has_injected_fields > 0 ? true : false;
 203   }
 204 
 205   bool has_object_fields() const;
 206 
 207   // nth nonstatic field (presented by ascending address)
 208   ciField* nonstatic_field_at(int i) {
 209     assert(_nonstatic_fields != NULL, "");
 210     return _nonstatic_fields->at(i);
 211   }
 212 
 213   ciInstanceKlass* unique_concrete_subklass();
 214   bool has_finalizable_subclass();
 215 
 216   bool contains_field_offset(int offset) {
 217     return instanceOopDesc::contains_field_offset(offset, nonstatic_field_size());
 218   }
 219 
 220   // Get the instance of java.lang.Class corresponding to
 221   // this klass.  This instance is used for locking of
 222   // synchronized static methods of this klass.
 223   ciInstance*            java_mirror();
 224 
 225   // Java access flags
 226   bool is_public      () { return flags().is_public(); }


< prev index next >