From: Andrew Pinski Date: Sat, 21 May 2005 16:57:24 +0000 (+0000) Subject: re PR middle-end/21331 (Incorrect folding of comparison) X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=e0624990b83ddebf8062a4a43f93880f2c8d5036;p=gcc.git re PR middle-end/21331 (Incorrect folding of comparison) 2004-05-21 Andrew Pinski PR middle-end/21331 PR tree-opt/21293 * gcc.c-torture/compile/pr21293.c: New test. * gcc.c-torture/execute/pr21331.c: New test. From-SVN: r100045 --- diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 2316607f005..856f8a22865 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,10 @@ +2004-05-21 Andrew Pinski + + PR middle-end/21331 + PR tree-opt/21293 + * gcc.c-torture/compile/pr21293.c: New test. + * gcc.c-torture/execute/pr21331.c: New test. + 2004-05-20 Richard Henderson * g++.dg/other/stdarg3.C: Spell "hpux*" correctly. diff --git a/gcc/testsuite/gcc.c-torture/compile/pr21293.c b/gcc/testsuite/gcc.c-torture/compile/pr21293.c new file mode 100644 index 00000000000..54184b3e039 --- /dev/null +++ b/gcc/testsuite/gcc.c-torture/compile/pr21293.c @@ -0,0 +1,12 @@ +/* Testcase from Dale Johannesen . */ +struct { +double x[1]; +} g; +void k( double *, double*); +void h(int Tmp8) +{ + int i; + for(i = 1;i <= Tmp8;i++) + k(&g.x[ + -1],&g.x[ Tmp8 + -1]); +} + diff --git a/gcc/testsuite/gcc.c-torture/execute/pr21331.c b/gcc/testsuite/gcc.c-torture/execute/pr21331.c new file mode 100644 index 00000000000..4d95878e631 --- /dev/null +++ b/gcc/testsuite/gcc.c-torture/execute/pr21331.c @@ -0,0 +1,15 @@ +void abort (void); + +int bar (void) { return -1; } + +unsigned long +foo () +{ unsigned long retval; + retval = bar (); + if (retval == -1) return 0; + return 3; } + +main () +{ if (foo () != 0) abort (); + return 0; } +