diff options
author | Geoff Keating <geoffk@cygnus.com> | 2000-08-01 01:27:45 +0000 |
---|---|---|
committer | Geoffrey Keating <geoffk@gcc.gnu.org> | 2000-08-01 01:27:45 +0000 |
commit | 1868b439596f4fab73f606bcb00c453a53f30a91 (patch) | |
tree | 9aad4d52d8baae4b8ee6b1ebb65362f9a4148c3d /gcc | |
parent | 45e84bd9d1c8a1dba39d10fee0b1869c6bd49ec9 (diff) | |
download | gcc-1868b439596f4fab73f606bcb00c453a53f30a91.zip gcc-1868b439596f4fab73f606bcb00c453a53f30a91.tar.gz gcc-1868b439596f4fab73f606bcb00c453a53f30a91.tar.bz2 |
flow.c (clear_log_links): Nuke global_live_at_start and global_live_at_end data...
* flow.c (clear_log_links): Nuke global_live_at_start and
global_live_at_end data, since if the log_links stuff is invalid
so is global_live_at_*.
From-SVN: r35396
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/flow.c | 17 |
2 files changed, 22 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index f69814f..d318908 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2000-07-31 Geoff Keating <geoffk@cygnus.com> + + * flow.c (clear_log_links): Nuke global_live_at_start and + global_live_at_end data, since if the log_links stuff is invalid + so is global_live_at_*. + 2000-07-31 Richard Henderson <rth@cygnus.com> * tm.texi (Addressing Modes): Clarify PRE/POST_MODIFY descriptions. @@ -7760,16 +7760,31 @@ flow_loop_outside_edge_p (loop, e) } -/* Clear LOG_LINKS fields of insns in a chain. */ +/* Clear LOG_LINKS fields of insns in a chain. + Also clear the global_live_at_{start,end} fields of the basic block + structures. */ void clear_log_links (insns) rtx insns; { rtx i; + int b; + for (i = insns; i; i = NEXT_INSN (i)) if (GET_RTX_CLASS (GET_CODE (i)) == 'i') LOG_LINKS (i) = 0; + + for (b = 0; b < n_basic_blocks; b++) + { + basic_block bb = BASIC_BLOCK (i); + + bb->global_live_at_start = NULL; + bb->global_live_at_end = NULL; + } + + ENTRY_BLOCK_PTR->global_live_at_end = NULL; + EXIT_BLOCK_PTR->global_live_at_start = NULL; } /* Given a register bitmap, turn on the bits in a HARD_REG_SET that |