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