diff options
author | Yuri Rumyantsev <ysrumyan@gmail.com> | 2014-07-10 07:38:39 +0000 |
---|---|---|
committer | Kirill Yukhin <kyukhin@gcc.gnu.org> | 2014-07-10 07:38:39 +0000 |
commit | 0fe2dc0e59bbfbe6c134dcd273c551e6d021001f (patch) | |
tree | f347fd27d3f9eba0caff8f9e5803f6bee669a0bf /gcc/testsuite | |
parent | 5eb3353874fe7a7b0b70cb32d4ae4ca64e409294 (diff) | |
download | gcc-0fe2dc0e59bbfbe6c134dcd273c551e6d021001f.zip gcc-0fe2dc0e59bbfbe6c134dcd273c551e6d021001f.tar.gz gcc-0fe2dc0e59bbfbe6c134dcd273c551e6d021001f.tar.bz2 |
re PR tree-optimization/61742 (wrong code at -O3 on x86_64-linux-gnu)
PR tree-optimization/61742
gcc/testsuite/
* gcc.dg/torture/pr61742.c: New test.
* gcc.gg/vect/cond-reduc-1.c: Rename it to vect-cond-reduc-1.c
* gcc.gg/vect/cond-reduc-2.c: Rename it to vect-cond-reduc-2.c
From-SVN: r212421
Diffstat (limited to 'gcc/testsuite')
-rw-r--r-- | gcc/testsuite/ChangeLog | 7 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/torture/pr61742.c | 30 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/vect/vect-cond-reduc-1.c (renamed from gcc/testsuite/gcc.dg/vect/cond-reduc-1.c) | 0 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/vect/vect-cond-reduc-2.c (renamed from gcc/testsuite/gcc.dg/vect/cond-reduc-2.c) | 2 |
4 files changed, 38 insertions, 1 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 2d55369..d9542f4 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,10 @@ +2014-07-10 Yuri Rumyantsev <ysrumyan@gmail.com> + + PR tree-optimization/61742 + * gcc.dg/torture/pr61742.c: New test. + * gcc.gg/vect/cond-reduc-1.c: Rename it to vect-cond-reduc-1.c + * gcc.gg/vect/cond-reduc-2.c: Rename it to vect-cond-reduc-2.c + 2014-07-09 Paolo Carlini <paolo.carlini@oracle.com> PR c++/60686 diff --git a/gcc/testsuite/gcc.dg/torture/pr61742.c b/gcc/testsuite/gcc.dg/torture/pr61742.c new file mode 100644 index 0000000..fe32062 --- /dev/null +++ b/gcc/testsuite/gcc.dg/torture/pr61742.c @@ -0,0 +1,30 @@ +/* { dg-do run } */ + +#include <stdlib.h> +int a, b, c, e, f, g, h, i, j, k; +int d[1]; + +int +main () +{ + int l, m; + k = 0; + for (; g < 1; g++) + { + for (i = 0; i < 1; i++) + m = b ? b : 1; + if (m) + j = d[e] = 0; + else + f = 0; + l = k ? k : a; + if (d[0] < 1) + { + c++; + h = (l || e) > 0; + } + } + if (c != 1) + abort(); + return 0; +}
\ No newline at end of file diff --git a/gcc/testsuite/gcc.dg/vect/cond-reduc-1.c b/gcc/testsuite/gcc.dg/vect/vect-cond-reduc-1.c index 981f6b0..981f6b0 100644 --- a/gcc/testsuite/gcc.dg/vect/cond-reduc-1.c +++ b/gcc/testsuite/gcc.dg/vect/vect-cond-reduc-1.c diff --git a/gcc/testsuite/gcc.dg/vect/cond-reduc-2.c b/gcc/testsuite/gcc.dg/vect/vect-cond-reduc-2.c index c329861..2ab457c 100644 --- a/gcc/testsuite/gcc.dg/vect/cond-reduc-2.c +++ b/gcc/testsuite/gcc.dg/vect/vect-cond-reduc-2.c @@ -11,7 +11,7 @@ void foo(int k) if (b[i] != 0) res += b[i]; } - a[k] = sum; + a[k] = res; } /* { dg-final { scan-tree-dump-times "vectorized 1 loops" 1 "vect" } } */ |