diff options
author | kugan <kugan@138bc75d-0d04-0410-961f-82ee72b054a4> | 2016-05-24 22:29:27 +0000 |
---|---|---|
committer | kugan <kugan@138bc75d-0d04-0410-961f-82ee72b054a4> | 2016-05-24 22:29:27 +0000 |
commit | 4e173d60156e3d955156b9e364933f5928170f58 (patch) | |
tree | bba95c0e089fdfca7bcaa8a0c3ee2bb3eacd8c3f | |
parent | a0c02a52971d65ee65792e3df1f2418f4deda593 (diff) | |
download | gcc-4e173d60156e3d955156b9e364933f5928170f58.tar.gz |
gcc/ChangeLog:
2016-05-24 Kugan Vivekanandarajah <kuganv@linaro.org>
* tree-ssa-reassoc.c (sort_by_operand_rank): Skip checking gimple_bb
when there is stmt_to_insert.
gcc/testsuite/ChangeLog:
2016-05-24 Kugan Vivekanandarajah <kuganv@linaro.org>
* gcc.dg/tree-ssa/reassoc-44.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@236673 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/tree-ssa/reassoc-44.c | 9 | ||||
-rw-r--r-- | gcc/tree-ssa-reassoc.c | 2 |
4 files changed, 20 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index b07aa808891..238cd07178d 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2016-05-24 Kugan Vivekanandarajah <kuganv@linaro.org> + + * tree-ssa-reassoc.c (sort_by_operand_rank): Skip checking gimple_bb + when there is stmt_to_insert. + 2016-05-24 Martin Sebor <msebor@redhat.com> PR c++/71147 diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index a2821a7c9c7..d81eedda023 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,7 @@ +2016-05-24 Kugan Vivekanandarajah <kuganv@linaro.org> + + * gcc.dg/tree-ssa/reassoc-44.c: New test. + 2016-05-24 Pat Haugen <pthaugen@us.ibm.com> PR target/71050 diff --git a/gcc/testsuite/gcc.dg/tree-ssa/reassoc-44.c b/gcc/testsuite/gcc.dg/tree-ssa/reassoc-44.c new file mode 100644 index 00000000000..1d946f6b604 --- /dev/null +++ b/gcc/testsuite/gcc.dg/tree-ssa/reassoc-44.c @@ -0,0 +1,9 @@ +/* { dg-do compile } */ +/* { dg-options "-O2" } */ + +unsigned int a; +int b, c; +void fn1 () +{ + b = a + c + c; +} diff --git a/gcc/tree-ssa-reassoc.c b/gcc/tree-ssa-reassoc.c index 3b0266767a3..c9ed6795679 100644 --- a/gcc/tree-ssa-reassoc.c +++ b/gcc/tree-ssa-reassoc.c @@ -519,6 +519,8 @@ sort_by_operand_rank (const void *pa, const void *pb) See PR60418. */ if (!SSA_NAME_IS_DEFAULT_DEF (oea->op) && !SSA_NAME_IS_DEFAULT_DEF (oeb->op) + && !oea->stmt_to_insert + && !oeb->stmt_to_insert && SSA_NAME_VERSION (oeb->op) != SSA_NAME_VERSION (oea->op)) { gimple *stmta = SSA_NAME_DEF_STMT (oea->op); |