167 if (VerifySecondarySupers) {
168 bool linear_result = linear_search_secondary_supers(k);
169 if (linear_result != result) {
170 on_secondary_supers_verification_failure((Klass*)this, k, linear_result, result, "mismatch");
171 }
172 }
173 #endif // PRODUCT
174
175 return result;
176 }
177
178 // Returns true if this Klass needs to be addressable via narrow Klass ID.
179 inline bool Klass::needs_narrow_id() const {
180 // Classes that are never instantiated need no narrow Klass Id, since the
181 // only point of having a narrow id is to put it into an object header. Keeping
182 // never instantiated classes out of class space lessens the class space pressure.
183 // For more details, see JDK-8338526.
184 // Note: don't call this function before access flags are initialized.
185 return !is_abstract() && !is_interface();
186 }
187 #endif // SHARE_OOPS_KLASS_INLINE_HPP
|
167 if (VerifySecondarySupers) {
168 bool linear_result = linear_search_secondary_supers(k);
169 if (linear_result != result) {
170 on_secondary_supers_verification_failure((Klass*)this, k, linear_result, result, "mismatch");
171 }
172 }
173 #endif // PRODUCT
174
175 return result;
176 }
177
178 // Returns true if this Klass needs to be addressable via narrow Klass ID.
179 inline bool Klass::needs_narrow_id() const {
180 // Classes that are never instantiated need no narrow Klass Id, since the
181 // only point of having a narrow id is to put it into an object header. Keeping
182 // never instantiated classes out of class space lessens the class space pressure.
183 // For more details, see JDK-8338526.
184 // Note: don't call this function before access flags are initialized.
185 return !is_abstract() && !is_interface();
186 }
187
188 inline size_t Klass::oop_size(oop obj) const {
189 return oop_size(obj, obj->mark());
190 }
191
192 #endif // SHARE_OOPS_KLASS_INLINE_HPP
|