diff options
author | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-05-17 02:31:56 +0000 |
---|---|---|
committer | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-05-17 02:31:56 +0000 |
commit | b3d6de8978fd2208885e98b19a91c9d29c170af5 (patch) | |
tree | 94c8895c6dde3b282518d4c9951067cd0ac517fd /gcc/recog.c | |
parent | 5e7d465f337d9d419b2528ad819390067caeca95 (diff) | |
download | gcc-b3d6de8978fd2208885e98b19a91c9d29c170af5.tar.gz |
Revert "Basic block renumbering removal", and two followup patches.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@53537 138bc75d-0d04-0410-961f-82ee72b054a4
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 adfef3b9c92..c3dbee29ee7 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. */ |