summaryrefslogtreecommitdiff
path: root/gcc/gcse.c
diff options
context:
space:
mode:
authorhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2003-01-25 21:32:42 +0000
committerhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2003-01-25 21:32:42 +0000
commit690108365864207ccfe3c995b78589e4086f0165 (patch)
tree6ee4145d1e976fa3d03f52cdc6f9487377b87883 /gcc/gcse.c
parent819f2ab7f2185ed35eb49a30a6a789d91728b3ce (diff)
downloadgcc-690108365864207ccfe3c995b78589e4086f0165.tar.gz
* gcse.c (local_cprop_pass): Update reg_sets table when needed.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@61799 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/gcse.c')
-rw-r--r--gcc/gcse.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/gcc/gcse.c b/gcc/gcse.c
index 272e39a915b..cf724f43d44 100644
--- a/gcc/gcse.c
+++ b/gcc/gcse.c
@@ -4422,7 +4422,12 @@ local_cprop_pass (alter_jumps)
cselib_finish ();
/* Global analysis may get into infinite loops for unreachable blocks. */
if (changed && alter_jumps)
- delete_unreachable_blocks ();
+ {
+ delete_unreachable_blocks ();
+ free_reg_set_mem ();
+ alloc_reg_set_mem (max_reg_num ());
+ compute_sets (get_insns ());
+ }
}
/* Forward propagate copies. This includes copies and constants. Return