--- a/hotspot/src/share/vm/ci/ciEnv.cpp Thu Dec 03 14:20:22 2009 -0800
+++ b/hotspot/src/share/vm/ci/ciEnv.cpp Tue Jan 19 16:03:09 2010 -0500
@@ -375,30 +375,6 @@
return get_object(found_klass)->as_klass();
}
- // If we fail to find an array klass, look again for its element type.
- // The element type may be available either locally or via constraints.
- // In either case, if we can find the element type in the system dictionary,
- // we must build an array type around it. The CI requires array klasses
- // to be loaded if their element klasses are loaded, except when memory
- // is exhausted.
- if (sym->byte_at(0) == '[' &&
- (sym->byte_at(1) == '[' || sym->byte_at(1) == 'L')) {
- // We have an unloaded array.
- // Build it on the fly if the element class exists.
- symbolOop elem_sym = oopFactory::new_symbol(sym->as_utf8()+1,
- sym->utf8_length()-1,
- KILL_COMPILE_ON_FATAL_(fail_type));
- // Get element ciKlass recursively.
- ciKlass* elem_klass =
- get_klass_by_name_impl(accessing_klass,
- get_object(elem_sym)->as_symbol(),
- require_local);
- if (elem_klass != NULL && elem_klass->is_loaded()) {
- // Now make an array for it
- return ciObjArrayKlass::make_impl(elem_klass);
- }
- }
-
if (require_local) return NULL;
// Not yet loaded into the VM, or not governed by loader constraints.
// Make a CI representative for it.