diff options
author | bstarynk <bstarynk@138bc75d-0d04-0410-961f-82ee72b054a4> | 2014-01-23 11:48:32 +0000 |
---|---|---|
committer | bstarynk <bstarynk@138bc75d-0d04-0410-961f-82ee72b054a4> | 2014-01-23 11:48:32 +0000 |
commit | f6fc17d03f28a94e35a53d0562595ea179ae2629 (patch) | |
tree | e32f9a0a6bdc05a424906b384d8c31c4fa78eb35 /gcc/loop-invariant.c | |
parent | 8e6ce8a843f5da1c63f8e21c58188e7b7f1a471f (diff) | |
download | gcc-f6fc17d03f28a94e35a53d0562595ea179ae2629.tar.gz |
2014-01-23 Basile Starynkevitch <basile@starynkevitch.net>
{{merge using svnmerge.py with trunk GCC 4.9 svn rev.206958. All is
well compiled.}}
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/melt-branch@206959 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/loop-invariant.c')
-rw-r--r-- | gcc/loop-invariant.c | 15 |
1 files changed, 3 insertions, 12 deletions
diff --git a/gcc/loop-invariant.c b/gcc/loop-invariant.c index b31b9268ead..100a2c1b7ff 100644 --- a/gcc/loop-invariant.c +++ b/gcc/loop-invariant.c @@ -652,14 +652,8 @@ may_assign_reg_p (rtx x) BODY. */ static void -find_defs (struct loop *loop, basic_block *body) +find_defs (struct loop *loop) { - unsigned i; - bitmap blocks = BITMAP_ALLOC (NULL); - - for (i = 0; i < loop->num_nodes; i++) - bitmap_set_bit (blocks, body[i]->index); - if (dump_file) { fprintf (dump_file, @@ -670,9 +664,8 @@ find_defs (struct loop *loop, basic_block *body) df_remove_problem (df_chain); df_process_deferred_rescans (); df_chain_add_problem (DF_UD_CHAIN); - df_set_blocks (blocks); df_set_flags (DF_RD_PRUNE_DEAD_DEFS); - df_analyze (); + df_analyze_loop (loop); check_invariant_table_size (); if (dump_file) @@ -682,8 +675,6 @@ find_defs (struct loop *loop, basic_block *body) "*****ending processing of loop %d ******\n", loop->num); } - - BITMAP_FREE (blocks); } /* Creates a new invariant for definition DEF in INSN, depending on invariants @@ -1005,7 +996,7 @@ find_invariants (struct loop *loop) compute_always_reached (loop, body, may_exit, always_reached); compute_always_reached (loop, body, has_exit, always_executed); - find_defs (loop, body); + find_defs (loop); find_invariants_body (loop, body, always_reached, always_executed); merge_identical_invariants (); |