From 2f575701c6a6764813d3ee420d9f2805c35b7481 Mon Sep 17 00:00:00 2001 From: Uros Bizjak Date: Tue, 3 Jul 2007 08:35:05 +0200 Subject: [PATCH] re PR middle-end/32176 (ICE tree-type mismatch: expected integer_cst, have plus_expr in int_cst_value, at tree.c:7720) PR middle-end/32176 * gcc.dg/pr32176.c: New test. Co-Authored-By: Francois-Xavier Coudert From-SVN: r126245 --- gcc/testsuite/ChangeLog | 6 ++++++ gcc/testsuite/gcc.dg/pr32176.c | 28 ++++++++++++++++++++++++++++ 2 files changed, 34 insertions(+) create mode 100644 gcc/testsuite/gcc.dg/pr32176.c diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 9b068650cfa..4c8dadf1d2b 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,9 @@ +2007-07-03 Uros Bizjak + Francois-Xavier Coudert + + PR middle-end/32176 + * gcc.dg/pr32176.c: New test. + 2007-07-03 Uros Bizjak * gcc.dg/const-float80.c : New test. diff --git a/gcc/testsuite/gcc.dg/pr32176.c b/gcc/testsuite/gcc.dg/pr32176.c new file mode 100644 index 00000000000..bd2a1e3f9d0 --- /dev/null +++ b/gcc/testsuite/gcc.dg/pr32176.c @@ -0,0 +1,28 @@ +/* Contributed by Francois-Xavier Coudert */ + +/* { dg-do compile } */ +/* { dg-options "-O2 -fprefetch-loop-arrays" } */ +/* { dg-options "-O2 -fprefetch-loop-arrays -march=i686 -msse" { target { { i?86-*-* x86_64-*-* } && ilp32 } } } */ + +void foo (void) +{ + int i, m; + float xa[21]; + + m = 0; + while (1) + { + i = 0; + while (1) + { + if (xa[(long int)i] == xa[(long int)(i+m)]) + _gfortran_abort (); + if (i == 10) + break; + i++; + } + if (m == 10) + break; + m++; + } +} -- 2.30.2