On 04/03/2011 08:54 PM, Xinliang David Li wrote:
+ + fprintf (file, "# BLOCK %d", bb->index); + if (bb->frequency) + fprintf (file, " freq:%d", bb->frequency); + if (bb->count) + fprintf (file, " count:" HOST_WIDEST_INT_PRINT_DEC, + bb->count); + fprintf (file, " seq:%d", bb_seqn++);
What is this sequence number useful for?
/* Output the insns. */ for (insn = first; insn;) { @@ -1721,8 +1788,19 @@ final (rtx first, FILE *file, int optimi insn_current_address = INSN_ADDRESSES (INSN_UID (insn)); #endif /* HAVE_ATTR_length */ + dump_basic_block_info (file, insn);
Pass start_to_bb, end_to_bb and bb_seqn++ as arguments. No need to have globals. You may want to convert start_to_bb and end_to_bb to VEC(), but in the way you're using them, it may not make much difference in clarity.
- if (flag_debug_asm) - fprintf (asm_out_file, "\t%s basic block %d\n", - ASM_COMMENT_START, NOTE_BASIC_BLOCK (insn)->index); -
There's a good number of test cases that use -dA. I suppose that removing this and adding the new output did not cause new regresions?
OK with those changes. Diego.