src/share/vm/opto/callnode.cpp
Index
Unified diffs
Context diffs
Sdiffs
Wdiffs
Patch
New
Old
Previous File
Next File
*** old/src/share/vm/opto/callnode.cpp Mon Oct 19 12:10:33 2009
--- new/src/share/vm/opto/callnode.cpp Mon Oct 19 12:10:33 2009
*** 419,443 ****
--- 419,445 ----
if (cik->is_instance_klass()) {
cik->print_name_on(st);
iklass = cik->as_instance_klass();
} else if (cik->is_type_array_klass()) {
cik->as_array_klass()->base_element_type()->print_name_on(st);
- st->print("[%d]=", spobj->n_fields());
} else if (cik->is_obj_array_klass()) {
! ciType* cie = cik->as_array_klass()->base_element_type();
! int ndim = 1;
while (cie->is_obj_array_klass()) {
ndim += 1;
cie = cie->as_array_klass()->base_element_type();
}
! ciKlass* cie = cik->as_obj_array_klass()->base_element_klass();
! if (cie->is_instance_klass()) {
cie->print_name_on(st);
+ } else if (cie->is_type_array_klass()) {
+ cie->as_array_klass()->base_element_type()->print_name_on(st);
+ } else {
+ ShouldNotReachHere();
+ }
+ st->print("[%d]", spobj->n_fields());
+ int ndim = cik->as_array_klass()->dimension() - 1;
while (ndim-- > 0) {
st->print("[]");
}
st->print("[%d]=", spobj->n_fields());
}
! st->print("={");
uint nf = spobj->n_fields();
if (nf > 0) {
uint first_ind = spobj->first_index();
Node* fld_node = mcall->in(first_ind);
ciField* cifield;
src/share/vm/opto/callnode.cpp
Index
Unified diffs
Context diffs
Sdiffs
Wdiffs
Patch
New
Old
Previous File
Next File