diff options
author | Uros Bizjak <uros@gcc.gnu.org> | 2013-10-27 21:32:29 +0100 |
---|---|---|
committer | Uros Bizjak <uros@gcc.gnu.org> | 2013-10-27 21:32:29 +0100 |
commit | 1d9b1f94b0d4372100d404ea467eb97d378b9506 (patch) | |
tree | 57e5ebd84db58d8f0844206d48b0d3e31c093a75 | |
parent | d570872da175ccdd8f3e7326e8051fa5c3ec020a (diff) | |
download | gcc-1d9b1f94b0d4372100d404ea467eb97d378b9506.zip gcc-1d9b1f94b0d4372100d404ea467eb97d378b9506.tar.gz gcc-1d9b1f94b0d4372100d404ea467eb97d378b9506.tar.bz2 |
re PR rtl-optimization/58679 (ICE in create_pre_exit, at mode-switching.c:421 with -mavx after r202915)
PR target/58679
* gcc.target/i386/pr58679-1.c: New test.
* gcc.target/i386/pr58679-2.c: Ditto.
From-SVN: r204109
-rw-r--r-- | gcc/testsuite/ChangeLog | 12 | ||||
-rw-r--r-- | gcc/testsuite/gcc.target/i386/pr58679-1.c | 13 | ||||
-rw-r--r-- | gcc/testsuite/gcc.target/i386/pr58679-2.c | 7 |
3 files changed, 28 insertions, 4 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index fa2eb7d..b3e5dc4 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,9 @@ +2013-10-27 Uros Bizjak <ubizjak@gmail.com> + + PR target/58679 + * gcc.target/i386/pr58679-1.c: New test. + * gcc.target/i386/pr58679-2.c: Ditto. + 2013-10-27 Tobias Burnus <burnus@net-b.de> PR other/33426 @@ -67,8 +73,7 @@ arithmetic. * gcc.dg/ftrapv-2.c: Likewise. * gcc.dg/pr30286.c: Likewise. - * gcc.dg/pr19340.c: Only run on targets that support - scheduling. + * gcc.dg/pr19340.c: Only run on targets that support scheduling. * lib/target-supports.exp (check_effective_target_trapping): New proc. Returns true if the target supports trapping arithmetic. @@ -84,8 +89,7 @@ 2013-10-24 Ian Lance Taylor <iant@google.com> - * go.test/go-test.exp (errchk): Combine quoted strings in - comments. + * go.test/go-test.exp (errchk): Combine quoted strings in comments. 2013-10-24 Cong Hou <congh@google.com> diff --git a/gcc/testsuite/gcc.target/i386/pr58679-1.c b/gcc/testsuite/gcc.target/i386/pr58679-1.c new file mode 100644 index 0000000..91db8e6 --- /dev/null +++ b/gcc/testsuite/gcc.target/i386/pr58679-1.c @@ -0,0 +1,13 @@ +/* { dg-do compile } */ +/* { dg-options "-O2 -mavx" } */ + +typedef struct { char a; long long b; } S; + +S foo (S x, S y) +{ + S z; + + z.a = 0; + z.b = x.b / y.b; + return z; +} diff --git a/gcc/testsuite/gcc.target/i386/pr58679-2.c b/gcc/testsuite/gcc.target/i386/pr58679-2.c new file mode 100644 index 0000000..b63545b --- /dev/null +++ b/gcc/testsuite/gcc.target/i386/pr58679-2.c @@ -0,0 +1,7 @@ +/* { dg-do compile } */ +/* { dg-options "-O2 -mavx" } */ + +int f (long long a, long long b) +{ + return (a * b) >> 16; +} |