diff options
author | Richard Biener <rguenther@suse.de> | 2013-10-14 09:17:20 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2013-10-14 09:17:20 +0000 |
commit | d19d091ca06d75016be9e3c5af8488bca8c0d546 (patch) | |
tree | 88a9daf9d217996ae9b5b9dd41c600493624baf1 /gcc | |
parent | c86738810e302e1fa9bb1bc2cb9fd932b4fca77a (diff) | |
download | gcc-d19d091ca06d75016be9e3c5af8488bca8c0d546.zip gcc-d19d091ca06d75016be9e3c5af8488bca8c0d546.tar.gz gcc-d19d091ca06d75016be9e3c5af8488bca8c0d546.tar.bz2 |
re PR tree-optimization/58640 (wrong code (segfaults) at -O3 on x86_64-linux-gnu)
2013-10-14 Richard Biener <rguenther@suse.de>
PR tree-optimization/58640
* gcc.c-torture/execute/pr58640-2.c: New testcase.
From-SVN: r203516
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/gcc.c-torture/execute/pr58640-2.c | 35 |
2 files changed, 40 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index a364e74..96f7cb2 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2013-10-14 Richard Biener <rguenther@suse.de> + + PR tree-optimization/58640 + * gcc.c-torture/execute/pr58640-2.c: New testcase. + 2013-10-13 Eric Botcazou <ebotcazou@adacore.com> * gnat.dg/uninit_array.ad[sn]: New test. diff --git a/gcc/testsuite/gcc.c-torture/execute/pr58640-2.c b/gcc/testsuite/gcc.c-torture/execute/pr58640-2.c new file mode 100644 index 0000000..3fc3a55 --- /dev/null +++ b/gcc/testsuite/gcc.c-torture/execute/pr58640-2.c @@ -0,0 +1,35 @@ +extern void abort (void); + +int a[20], b, c; + +int +fn1 () +{ + int d, e, f, g = 0; + + a[12] = 1; + for (e = 0; e < 3; e++) + for (d = 0; d < 2; d++) + { + for (f = 0; f < 2; f++) + { + g ^= a[12] > 1; + if (g) + return 0; + if (b) + break; + } + for (c = 0; c < 1; c++) + a[d] = a[e * 3 + 9]; + } + return 0; +} + +int +main () +{ + fn1 (); + if (a[0] != 0) + abort (); + return 0; +} |