From: razya Date: Thu, 22 Oct 2009 18:27:43 +0000 (+0000) Subject: 2009-10-22 Razya Ladelsky X-Git-Url: http://git.sourceforge.jp/view?p=pf3gnuchains%2Fgcc-fork.git;a=commitdiff_plain;h=cca979c60178b8d027d04c6d89d0dde30ec7485e 2009-10-22 Razya Ladelsky * testsuite/gcc.dg/autopar/outer-4.c: Adjust scan. * testsuite/gcc.dg/autopar/outer-5.c: Adjust scan. * testsuite/gcc.dg/autopar/outer-5.c: Add scan optimized. * tree-cfg.c(gimple_duplicate_sese_tail): Fix typos/indentation/white space. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@153469 138bc75d-0d04-0410-961f-82ee72b054a4 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 24928d2e011..e2c4ffd647c 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2009-10-22 Razya Ladelsky + + * testsuite/gcc.dg/autopar/outer-4.c: Adjust scan. + * testsuite/gcc.dg/autopar/outer-5.c: Adjust scan. + * testsuite/gcc.dg/autopar/outer-5.c: Add scan optimized. + * tree-cfg.c(gimple_duplicate_sese_tail): Fix typos/indentation/white space. + 2009-10-22 Richard Guenther * lto-streamer.h (lto_symtab_merge_cgraph_nodes): Declare. diff --git a/gcc/testsuite/gcc.dg/autopar/outer-4.c b/gcc/testsuite/gcc.dg/autopar/outer-4.c index d6ad687d408..56f6123385d 100644 --- a/gcc/testsuite/gcc.dg/autopar/outer-4.c +++ b/gcc/testsuite/gcc.dg/autopar/outer-4.c @@ -31,8 +31,7 @@ int main(void) } -/* Check that outer loop is parallelized. */ -/* { dg-final { scan-tree-dump-times "parallelizing outer loop" 0 "parloops" } } */ -/* { dg-final { scan-tree-dump-times "parallelizing inner loop" 1 "parloops" } } */ +/* { dg-final { scan-tree-dump-times "parallelizing outer loop" 1 "parloops" { xfail *-*-* } } } */ +/* { dg-final { scan-tree-dump-times "loopfn" 5 "optimized" } } */ /* { dg-final { cleanup-tree-dump "parloops" } } */ /* { dg-final { cleanup-tree-dump "optimized" } } */ diff --git a/gcc/testsuite/gcc.dg/autopar/outer-5.c b/gcc/testsuite/gcc.dg/autopar/outer-5.c index e172b3f9332..3a542988c26 100644 --- a/gcc/testsuite/gcc.dg/autopar/outer-5.c +++ b/gcc/testsuite/gcc.dg/autopar/outer-5.c @@ -44,9 +44,7 @@ int main(void) return 0; } - -/* Check that outer loop is parallelized. */ -/* { dg-final { scan-tree-dump-times "parallelizing outer loop" 0 "parloops" } } */ -/* { dg-final { scan-tree-dump-times "parallelizing inner loop" 1 "parloops" } } */ +/* { dg-final { scan-tree-dump-times "parallelizing outer loop" 1 "parloops" { xfail *-*-* } } } */ +/* { dg-final { scan-tree-dump-times "loopfn" 5 "optimized" } } */ /* { dg-final { cleanup-tree-dump "parloops" } } */ /* { dg-final { cleanup-tree-dump "optimized" } } */ diff --git a/gcc/testsuite/gcc.dg/autopar/outer-6.c b/gcc/testsuite/gcc.dg/autopar/outer-6.c index 67b89d05982..6e027d2f69a 100644 --- a/gcc/testsuite/gcc.dg/autopar/outer-6.c +++ b/gcc/testsuite/gcc.dg/autopar/outer-6.c @@ -46,5 +46,6 @@ int main(void) /* Check that outer loop is parallelized. */ /* { dg-final { scan-tree-dump-times "parallelizing outer loop" 1 "parloops" } } */ /* { dg-final { scan-tree-dump-times "parallelizing inner loop" 0 "parloops" } } */ +/* { dg-final { scan-tree-dump-times "loopfn" 5 "optimized" } } */ /* { dg-final { cleanup-tree-dump "parloops" } } */ /* { dg-final { cleanup-tree-dump "optimized" } } */ diff --git a/gcc/tree-cfg.c b/gcc/tree-cfg.c index 7f31868ea7b..4a34cefd2a4 100644 --- a/gcc/tree-cfg.c +++ b/gcc/tree-cfg.c @@ -5254,7 +5254,7 @@ gimple_duplicate_sese_tail (edge entry ATTRIBUTE_UNUSED, edge exit ATTRIBUTE_UNU /* If the block consisting of the exit condition has the latch as successor, then the body of the loop is executed before - the exit consition is tested. In such case, moving the + the exit condition is tested. In such case, moving the condition to the entry, causes that the loop will iterate one less iteration (which is the wanted outcome, since we peel out the last iteration). If the body is executed after @@ -5272,7 +5272,7 @@ gimple_duplicate_sese_tail (edge entry ATTRIBUTE_UNUSED, edge exit ATTRIBUTE_UNU { iters_bb = gimple_bb (SSA_NAME_DEF_STMT (gimple_cond_rhs (cond_stmt))); for (gsi1 = gsi_start_bb (iters_bb); !gsi_end_p (gsi1); gsi_next (&gsi1)) - if (gsi_stmt (gsi1)==SSA_NAME_DEF_STMT (gimple_cond_rhs (cond_stmt))) + if (gsi_stmt (gsi1) == SSA_NAME_DEF_STMT (gimple_cond_rhs (cond_stmt))) break; new_rhs = force_gimple_operand_gsi (&gsi1, new_rhs, true, @@ -5302,7 +5302,7 @@ gimple_duplicate_sese_tail (edge entry ATTRIBUTE_UNUSED, edge exit ATTRIBUTE_UNU /* If the block consisting of the exit condition has the latch as successor, then the body of the loop is executed before - the exit consition is tested. + the exit condition is tested. { body } { cond } (exit[0]) -> { latch } @@ -5340,7 +5340,7 @@ gimple_duplicate_sese_tail (edge entry ATTRIBUTE_UNUSED, edge exit ATTRIBUTE_UNU region_copy[i]->flags |= BB_DUPLICATED; /* Iterate all incoming edges to latch. All those coming from - copied bbs will be redicrecred to exit_bb. */ + copied bbs will be redirected to exit_bb. */ FOR_EACH_EDGE (e, ei, orig_loop->latch->preds) { if (e->src->flags & BB_DUPLICATED) @@ -5360,19 +5360,18 @@ gimple_duplicate_sese_tail (edge entry ATTRIBUTE_UNUSED, edge exit ATTRIBUTE_UNU } VEC_free (edge, heap, redirect_edges); - - + /* Anything that is outside of the region, but was dominated by something inside needs to update dominance info. */ iterate_fix_dominators (CDI_DOMINATORS, doms, false); VEC_free (basic_block, heap, doms); - + /* Update the SSA web. */ update_ssa (TODO_update_ssa); - + if (free_region_copy) free (region_copy); - + free_original_copy_tables (); return true; }