diff options
author | Richard Henderson <rth@redhat.com> | 2002-05-16 19:31:56 -0700 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 2002-05-16 19:31:56 -0700 |
commit | 0b17ab2f5b1184fdb568786f791bc0613e574241 (patch) | |
tree | 94c8895c6dde3b282518d4c9951067cd0ac517fd /gcc/recog.c | |
parent | 8ae86b3cd8c96e287714f127879b018ac7fccd7d (diff) | |
download | gcc-0b17ab2f5b1184fdb568786f791bc0613e574241.zip gcc-0b17ab2f5b1184fdb568786f791bc0613e574241.tar.gz gcc-0b17ab2f5b1184fdb568786f791bc0613e574241.tar.bz2 |
Revert "Basic block renumbering removal", and two followup patches.
From-SVN: r53537
Diffstat (limited to 'gcc/recog.c')
-rw-r--r-- | gcc/recog.c | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/gcc/recog.c b/gcc/recog.c index adfef3b9..c3dbee2 100644 --- a/gcc/recog.c +++ b/gcc/recog.c @@ -2727,14 +2727,15 @@ split_all_insns (upd_life) { sbitmap blocks; int changed; - basic_block bb; + int i; - blocks = sbitmap_alloc (last_basic_block); + blocks = sbitmap_alloc (n_basic_blocks); sbitmap_zero (blocks); changed = 0; - FOR_ALL_BB_REVERSE (bb) + for (i = n_basic_blocks - 1; i >= 0; --i) { + basic_block bb = BASIC_BLOCK (i); rtx insn, next; bool finish = false; @@ -2755,7 +2756,7 @@ split_all_insns (upd_life) while (GET_CODE (last) == BARRIER) last = PREV_INSN (last); - SET_BIT (blocks, bb->sindex); + SET_BIT (blocks, i); changed = 1; insn = last; } @@ -2998,8 +2999,7 @@ peephole2_optimize (dump_file) regset_head rs_heads[MAX_INSNS_PER_PEEP2 + 2]; rtx insn, prev; regset live; - int i; - basic_block bb; + int i, b; #ifdef HAVE_conditional_execution sbitmap blocks; bool changed; @@ -3013,15 +3013,16 @@ peephole2_optimize (dump_file) live = INITIALIZE_REG_SET (rs_heads[i]); #ifdef HAVE_conditional_execution - blocks = sbitmap_alloc (last_basic_block); + blocks = sbitmap_alloc (n_basic_blocks); sbitmap_zero (blocks); changed = false; #else count_or_remove_death_notes (NULL, 1); #endif - FOR_ALL_BB_REVERSE (bb) + for (b = n_basic_blocks - 1; b >= 0; --b) { + basic_block bb = BASIC_BLOCK (b); struct propagate_block_info *pbi; /* Indicate that all slots except the last holds invalid data. */ |