< prev index next >

src/hotspot/share/ci/ciType.cpp

Print this page

        

*** 32,54 **** ciType* ciType::_basic_types[T_CONFLICT+1]; // ciType // ! // This class represents either a class (T_OBJECT), array (T_ARRAY), ! // or one of the primitive types such as T_INT. // ------------------------------------------------------------------ // ciType::ciType // ciType::ciType(BasicType basic_type) : ciMetadata() { assert(basic_type >= T_BOOLEAN && basic_type <= T_CONFLICT, "range check"); _basic_type = basic_type; } ciType::ciType(Klass* k) : ciMetadata(k) { ! _basic_type = k->is_array_klass() ? T_ARRAY : T_OBJECT; } // ------------------------------------------------------------------ // ciType::is_subtype_of --- 32,54 ---- ciType* ciType::_basic_types[T_CONFLICT+1]; // ciType // ! // This class represents either a class (T_OBJECT), value (T_VALUETYPE), ! // array (T_ARRAY),or one of the primitive types such as T_INT. // ------------------------------------------------------------------ // ciType::ciType // ciType::ciType(BasicType basic_type) : ciMetadata() { assert(basic_type >= T_BOOLEAN && basic_type <= T_CONFLICT, "range check"); _basic_type = basic_type; } ciType::ciType(Klass* k) : ciMetadata(k) { ! _basic_type = k->is_array_klass() ? T_ARRAY : (k->is_value() ? T_VALUETYPE : T_OBJECT); } // ------------------------------------------------------------------ // ciType::is_subtype_of
*** 103,112 **** --- 103,113 ---- // ------------------------------------------------------------------ // ciType::box_klass // ciKlass* ciType::box_klass() { + assert(basic_type() != T_VALUETYPE, "value type boxing not yet supported"); if (!is_primitive_type()) return this->as_klass(); // reference types are "self boxing" // Void is "boxed" with a null. if (basic_type() == T_VOID) return NULL;
< prev index next >