src/share/vm/opto/parse2.cpp

changeset 656
1e026f8da827
parent 564
c0939256690b
child 657
2a1a77d3458f
     1.1 --- a/src/share/vm/opto/parse2.cpp	Mon Jun 23 18:21:18 2008 -0700
     1.2 +++ b/src/share/vm/opto/parse2.cpp	Tue Jun 24 10:43:29 2008 -0700
     1.3 @@ -67,12 +67,9 @@
     1.4    const Type*       elemtype = arytype->elem();
     1.5  
     1.6    if (UseUniqueSubclasses && result2 != NULL) {
     1.7 -    const Type* el = elemtype;
     1.8 -    if (elemtype->isa_narrowoop()) {
     1.9 -      el = elemtype->is_narrowoop()->make_oopptr();
    1.10 -    }
    1.11 -    const TypeInstPtr* toop = el->isa_instptr();
    1.12 -    if (toop) {
    1.13 +    const Type* el = elemtype->make_ptr();
    1.14 +    if (el && el->isa_instptr()) {
    1.15 +      const TypeInstPtr* toop = el->is_instptr();
    1.16        if (toop->klass()->as_instance_klass()->unique_concrete_subklass()) {
    1.17          // If we load from "AbstractClass[]" we must see "ConcreteSubClass".
    1.18          const Type* subklass = Type::get_const_type(toop->klass());

mercurial