comparison src/share/vm/c1/c1_InstructionPrinter.cpp @ 1819:f02a8bbe6ed4

6986046: C1 valuestack cleanup Summary: fixes an historical oddity in C1 with inlining where all of the expression stacks are kept in the topmost ValueStack instead of being in their respective ValueStacks. Reviewed-by: never Contributed-by: Christian Wimmer <cwimmer@uci.edu>
author roland
date Tue, 29 Dec 2009 19:08:54 +0100
parents d5d065957597
children f95d63e2154a
comparison
equal deleted inserted replaced
1817:c40600e85311 1819:f02a8bbe6ed4
314 314
315 315
316 void InstructionPrinter::print_line(Instruction* instr) { 316 void InstructionPrinter::print_line(Instruction* instr) {
317 // print instruction data on one line 317 // print instruction data on one line
318 if (instr->is_pinned()) output()->put('.'); 318 if (instr->is_pinned()) output()->put('.');
319 fill_to(bci_pos ); output()->print("%d", instr->bci()); 319 fill_to(bci_pos ); output()->print("%d", instr->printable_bci());
320 fill_to(use_pos ); output()->print("%d", instr->use_count()); 320 fill_to(use_pos ); output()->print("%d", instr->use_count());
321 fill_to(temp_pos ); print_temp(instr); 321 fill_to(temp_pos ); print_temp(instr);
322 fill_to(instr_pos); print_instr(instr); 322 fill_to(instr_pos); print_instr(instr);
323 output()->cr(); 323 output()->cr();
324 // add a line for StateSplit instructions w/ non-empty stacks 324 // add a line for StateSplit instructions w/ non-empty stacks
567 output()->print("V"); printed_flag = true; 567 output()->print("V"); printed_flag = true;
568 } 568 }
569 if (printed_flag) output()->print(") "); 569 if (printed_flag) output()->print(") ");
570 570
571 // print block bci range 571 // print block bci range
572 output()->print("[%d, %d]", x->bci(), (end == NULL ? -1 : end->bci())); 572 output()->print("[%d, %d]", x->bci(), (end == NULL ? -1 : end->printable_bci()));
573 573
574 // print block successors 574 // print block successors
575 if (end != NULL && end->number_of_sux() > 0) { 575 if (end != NULL && end->number_of_sux() > 0) {
576 output()->print(" ->"); 576 output()->print(" ->");
577 for (int i = 0; i < end->number_of_sux(); i++) { 577 for (int i = 0; i < end->number_of_sux(); i++) {