equal
deleted
inserted
replaced
170 return obj != NULL && is_subclass(obj->klass()); |
170 return obj != NULL && is_subclass(obj->klass()); |
171 } |
171 } |
172 |
172 |
173 inline bool java_lang_Class::is_instance(oop obj) { |
173 inline bool java_lang_Class::is_instance(oop obj) { |
174 return obj != NULL && obj->klass() == SystemDictionary::Class_klass(); |
174 return obj != NULL && obj->klass() == SystemDictionary::Class_klass(); |
|
175 } |
|
176 |
|
177 inline bool java_lang_Class::is_primitive(oop java_class) { |
|
178 // should assert: |
|
179 //assert(java_lang_Class::is_instance(java_class), "must be a Class object"); |
|
180 bool is_primitive = (java_class->metadata_field(_klass_offset) == NULL); |
|
181 |
|
182 #ifdef ASSERT |
|
183 if (is_primitive) { |
|
184 Klass* k = ((Klass*)java_class->metadata_field(_array_klass_offset)); |
|
185 assert(k == NULL || is_java_primitive(ArrayKlass::cast(k)->element_type()), |
|
186 "Should be either the T_VOID primitive or a java primitive"); |
|
187 } |
|
188 #endif |
|
189 |
|
190 return is_primitive; |
175 } |
191 } |
176 |
192 |
177 inline bool java_lang_invoke_DirectMethodHandle::is_instance(oop obj) { |
193 inline bool java_lang_invoke_DirectMethodHandle::is_instance(oop obj) { |
178 return obj != NULL && is_subclass(obj->klass()); |
194 return obj != NULL && is_subclass(obj->klass()); |
179 } |
195 } |