Mercurial > hg > graal-compiler
comparison src/share/vm/opto/callnode.cpp @ 1040:873ec3787992
6892186: SA does not dump debug info for scalar replaced objects
Summary: Implement scalar replaced objects debug info dump in SA.
Reviewed-by: twisti
author | kvn |
---|---|
date | Wed, 21 Oct 2009 09:15:33 -0700 |
parents | 72088be4b386 |
children | 7c57aead6d3e |
comparison
equal
deleted
inserted
replaced
1039:987e948ebbc8 | 1040:873ec3787992 |
---|---|
419 if (cik->is_instance_klass()) { | 419 if (cik->is_instance_klass()) { |
420 cik->print_name_on(st); | 420 cik->print_name_on(st); |
421 iklass = cik->as_instance_klass(); | 421 iklass = cik->as_instance_klass(); |
422 } else if (cik->is_type_array_klass()) { | 422 } else if (cik->is_type_array_klass()) { |
423 cik->as_array_klass()->base_element_type()->print_name_on(st); | 423 cik->as_array_klass()->base_element_type()->print_name_on(st); |
424 st->print("[%d]=", spobj->n_fields()); | 424 st->print("[%d]", spobj->n_fields()); |
425 } else if (cik->is_obj_array_klass()) { | 425 } else if (cik->is_obj_array_klass()) { |
426 ciType* cie = cik->as_array_klass()->base_element_type(); | 426 ciKlass* cie = cik->as_obj_array_klass()->base_element_klass(); |
427 int ndim = 1; | 427 if (cie->is_instance_klass()) { |
428 while (cie->is_obj_array_klass()) { | 428 cie->print_name_on(st); |
429 ndim += 1; | 429 } else if (cie->is_type_array_klass()) { |
430 cie = cie->as_array_klass()->base_element_type(); | 430 cie->as_array_klass()->base_element_type()->print_name_on(st); |
431 } else { | |
432 ShouldNotReachHere(); | |
431 } | 433 } |
432 cie->print_name_on(st); | 434 st->print("[%d]", spobj->n_fields()); |
435 int ndim = cik->as_array_klass()->dimension() - 1; | |
433 while (ndim-- > 0) { | 436 while (ndim-- > 0) { |
434 st->print("[]"); | 437 st->print("[]"); |
435 } | 438 } |
436 st->print("[%d]=", spobj->n_fields()); | 439 } |
437 } | 440 st->print("={"); |
438 st->print("{"); | |
439 uint nf = spobj->n_fields(); | 441 uint nf = spobj->n_fields(); |
440 if (nf > 0) { | 442 if (nf > 0) { |
441 uint first_ind = spobj->first_index(); | 443 uint first_ind = spobj->first_index(); |
442 Node* fld_node = mcall->in(first_ind); | 444 Node* fld_node = mcall->in(first_ind); |
443 ciField* cifield; | 445 ciField* cifield; |