92 return true; 93 } else { 94 return as_obj_array_klass()->base_element_klass()->is_leaf_type(); 95 } 96 } 97 98 99 // ------------------------------------------------------------------ 100 // ciArrayKlass::base_element_type 101 // 102 // What type is obtained when this array is indexed as many times as possible? 103 ciArrayKlass* ciArrayKlass::make(ciType* element_type) { 104 if (element_type->is_primitive_type()) { 105 return ciTypeArrayKlass::make(element_type->basic_type()); 106 } else if (element_type->is_valuetype() && element_type->as_value_klass()->flatten_array()) { 107 return ciValueArrayKlass::make(element_type->as_klass()); 108 } else { 109 return ciObjArrayKlass::make(element_type->as_klass()); 110 } 111 } | 92 return true; 93 } else { 94 return as_obj_array_klass()->base_element_klass()->is_leaf_type(); 95 } 96 } 97 98 99 // ------------------------------------------------------------------ 100 // ciArrayKlass::base_element_type 101 // 102 // What type is obtained when this array is indexed as many times as possible? 103 ciArrayKlass* ciArrayKlass::make(ciType* element_type) { 104 if (element_type->is_primitive_type()) { 105 return ciTypeArrayKlass::make(element_type->basic_type()); 106 } else if (element_type->is_valuetype() && element_type->as_value_klass()->flatten_array()) { 107 return ciValueArrayKlass::make(element_type->as_klass()); 108 } else { 109 return ciObjArrayKlass::make(element_type->as_klass()); 110 } 111 } 112 113 int ciArrayKlass::array_header_in_bytes() { 114 return get_ArrayKlass()->array_header_in_bytes(); 115 } |