src/share/vm/ci/ciObjArrayKlass.cpp

changeset 5914
d13d7aba8c12
parent 4142
d8ce2825b193
child 6198
55fb97c4c58d
     1.1 --- a/src/share/vm/ci/ciObjArrayKlass.cpp	Wed Oct 09 11:05:17 2013 -0700
     1.2 +++ b/src/share/vm/ci/ciObjArrayKlass.cpp	Wed Oct 09 16:32:21 2013 +0200
     1.3 @@ -179,3 +179,16 @@
     1.4  ciObjArrayKlass* ciObjArrayKlass::make(ciKlass* element_klass) {
     1.5    GUARDED_VM_ENTRY(return make_impl(element_klass);)
     1.6  }
     1.7 +
     1.8 +ciKlass* ciObjArrayKlass::exact_klass() {
     1.9 +  ciType* base = base_element_type();
    1.10 +  if (base->is_instance_klass()) {
    1.11 +    ciInstanceKlass* ik = base->as_instance_klass();
    1.12 +    if (ik->exact_klass() != NULL) {
    1.13 +      return this;
    1.14 +    }
    1.15 +  } else if (base->is_primitive_type()) {
    1.16 +    return this;
    1.17 +  }
    1.18 +  return NULL;
    1.19 +}

mercurial