< prev index next >

src/hotspot/share/ci/ciArrayKlass.cpp

Print this page


  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 }
< prev index next >