diff options
author | Bin Cheng <bin.cheng@arm.com> | 2017-10-10 13:58:30 +0000 |
---|---|---|
committer | Bin Cheng <amker@gcc.gnu.org> | 2017-10-10 13:58:30 +0000 |
commit | 2fe1a1b888e204fd0ccc4e9c96b7065344e879aa (patch) | |
tree | 192ae83cc0b42393777e1257126d93dc5903271d | |
parent | fb1fe1f3cc3a65f3734c29b4a2280f93b76eb7cc (diff) | |
download | gcc-2fe1a1b888e204fd0ccc4e9c96b7065344e879aa.zip gcc-2fe1a1b888e204fd0ccc4e9c96b7065344e879aa.tar.gz gcc-2fe1a1b888e204fd0ccc4e9c96b7065344e879aa.tar.bz2 |
tree-vect-loop-manip.c (rename_variables_in_bb): Rename PHI nodes when copying loop nest with only one inner loop.
* tree-vect-loop-manip.c (rename_variables_in_bb): Rename PHI nodes
when copying loop nest with only one inner loop.
gcc/testsuite
* gcc.dg/tree-ssa/ldist-34.c: New test.
From-SVN: r253586
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/tree-ssa/ldist-34.c | 15 | ||||
-rw-r--r-- | gcc/tree-vect-loop-manip.c | 2 |
4 files changed, 24 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index f7f41ed..ed48727 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2017-10-10 Bin Cheng <bin.cheng@arm.com> + + * tree-vect-loop-manip.c (rename_variables_in_bb): Rename PHI nodes + when copying loop nest with only one inner loop. + 2017-10-10 Richard Biener <rguenther@suse.de> * tree-cfgcleanup.c (cleanup_tree_cfg_noloop): Avoid compacting diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index ee9d34c..78a0cc4 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,5 +1,9 @@ 2017-10-10 Bin Cheng <bin.cheng@arm.com> + * gcc.dg/tree-ssa/ldist-34.c: New test. + +2017-10-10 Bin Cheng <bin.cheng@arm.com> + * gcc.dg/tree-ssa/ldist-27.c: New test. 2017-10-09 Ed Schonberg <schonberg@adacore.com> diff --git a/gcc/testsuite/gcc.dg/tree-ssa/ldist-34.c b/gcc/testsuite/gcc.dg/tree-ssa/ldist-34.c new file mode 100644 index 0000000..3d68a85 --- /dev/null +++ b/gcc/testsuite/gcc.dg/tree-ssa/ldist-34.c @@ -0,0 +1,15 @@ +/* { dg-do compile } */ +/* { dg-options "-O2 -ftree-loop-distribution" } */ + +#define X (3.0) +int b, c; +double a[30000]; +int foo () { + for (int i = 0; i < 100; ++i) { + for (int j = 0; j < c; ++j) + if (b) + a[0] = b; + a[i * 100] = a[1] = X; + } + return 0; +} diff --git a/gcc/tree-vect-loop-manip.c b/gcc/tree-vect-loop-manip.c index fb73a885..d608533 100644 --- a/gcc/tree-vect-loop-manip.c +++ b/gcc/tree-vect-loop-manip.c @@ -117,8 +117,6 @@ rename_variables_in_bb (basic_block bb, bool rename_from_outer_loop) || single_pred (e->src) != outer_loop->header) continue; } - else - continue; } } for (gphi_iterator gsi = gsi_start_phis (bb); !gsi_end_p (gsi); |