diff options
Diffstat (limited to 'gcc/final.c')
-rw-r--r-- | gcc/final.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/gcc/final.c b/gcc/final.c index 0f4464a7893..3e1b2232c39 100644 --- a/gcc/final.c +++ b/gcc/final.c @@ -928,8 +928,8 @@ insn_current_reference_address (branch) void compute_alignments () { + int i; int log, max_skip, max_log; - basic_block bb; if (label_align) { @@ -946,8 +946,9 @@ compute_alignments () if (! optimize || optimize_size) return; - FOR_ALL_BB (bb) + for (i = 0; i < n_basic_blocks; i++) { + basic_block bb = BASIC_BLOCK (i); rtx label = bb->head; int fallthru_frequency = 0, branch_frequency = 0, has_fallthru = 0; edge e; @@ -977,8 +978,8 @@ compute_alignments () if (!has_fallthru && (branch_frequency > BB_FREQ_MAX / 10 - || (bb->frequency > bb->prev_bb->frequency * 10 - && (bb->prev_bb->frequency + || (bb->frequency > BASIC_BLOCK (i - 1)->frequency * 10 + && (BASIC_BLOCK (i - 1)->frequency <= ENTRY_BLOCK_PTR->frequency / 2)))) { log = JUMP_ALIGN (label); @@ -2018,7 +2019,7 @@ final_scan_insn (insn, file, optimize, prescan, nopeepholes) #endif if (flag_debug_asm) fprintf (asm_out_file, "\t%s basic block %d\n", - ASM_COMMENT_START, NOTE_BASIC_BLOCK (insn)->sindex); + ASM_COMMENT_START, NOTE_BASIC_BLOCK (insn)->index); break; case NOTE_INSN_EH_REGION_BEG: |