src/share/vm/opto/parse2.cpp

changeset 670
9c2ecc2ffb12
parent 631
d1605aabd0a1
parent 657
2a1a77d3458f
child 681
9b66e6287f4a
     1.1 --- a/src/share/vm/opto/parse2.cpp	Thu Jul 03 11:01:32 2008 -0700
     1.2 +++ b/src/share/vm/opto/parse2.cpp	Fri Jul 11 01:14:44 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());
    1.19 @@ -2223,7 +2220,7 @@
    1.20      sprintf(buffer, "Bytecode %d: %s", bci(), Bytecodes::name(bc()));
    1.21      bool old = printer->traverse_outs();
    1.22      printer->set_traverse_outs(true);
    1.23 -    printer->print_method(C, buffer, 3);
    1.24 +    printer->print_method(C, buffer, 4);
    1.25      printer->set_traverse_outs(old);
    1.26    }
    1.27  #endif

mercurial