From: Nathan Sidwell Date: Wed, 4 Mar 2009 23:26:51 +0000 (+0000) Subject: predcom-1.C: New test. X-Git-Tag: releases/gcc-4.4.0~355 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=630c80e6355a0637cfb2250840e1131a9cd4e283;p=thirdparty%2Fgcc.git predcom-1.C: New test. 2009-03-04 Nathan Sidwell * g++.dg/torture/predcom-1.C: New test. From-SVN: r144629 --- diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index ca0a6ee8ad09..a2f28bba4c8b 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,7 @@ +2009-03-04 Nathan Sidwell + + * g++.dg/torture/predcom-1.C: New test. + 2009-03-04 Richard Guenther PR tree-optimization/39362 diff --git a/gcc/testsuite/g++.dg/torture/predcom-1.C b/gcc/testsuite/g++.dg/torture/predcom-1.C new file mode 100644 index 000000000000..c668cac606db --- /dev/null +++ b/gcc/testsuite/g++.dg/torture/predcom-1.C @@ -0,0 +1,29 @@ +/* Test for ICE in predictive commoning with empty loop header block + on arm-none-linux-gnueabi. */ + +struct Foo +{ + double *ptr; + + Foo (double *ptr_) + : ptr (ptr_) + { + } + + Foo PostInc () + { + return Foo (ptr++); + } +}; + +bool Baz (Foo first, double *last) +{ + Foo prev (first.ptr); + + first.ptr++; + + while (first.ptr != last) + if (*first.PostInc ().ptr < *prev.PostInc ().ptr) + return false; +} +