From 21975c30c3556005eed8eff93524285ebaf4cdf9 Mon Sep 17 00:00:00 2001 From: Uros Bizjak Date: Sun, 2 Sep 2012 09:07:45 +0200 Subject: [PATCH] re PR target/42295 (ICE: 'error: unable to find a register to spill in class "AREG"' with -fschedule-insns) PR target/42295 * g++.dg/opt/pr42295.C: New test. From-SVN: r190854 --- gcc/testsuite/ChangeLog | 6 ++++++ gcc/testsuite/g++.dg/opt/pr42295.C | 18 ++++++++++++++++++ 2 files changed, 24 insertions(+) create mode 100644 gcc/testsuite/g++.dg/opt/pr42295.C diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 6c433056ba4..5a66dc271bc 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,9 @@ +2012-09-02 Uros Bizjak + + PR target/42295 + * g++.dg/opt/pr42295.C: New test. + + 2012-09-01 Jakub Jelinek PR target/54436 diff --git a/gcc/testsuite/g++.dg/opt/pr42295.C b/gcc/testsuite/g++.dg/opt/pr42295.C new file mode 100644 index 00000000000..602420626e5 --- /dev/null +++ b/gcc/testsuite/g++.dg/opt/pr42295.C @@ -0,0 +1,18 @@ +// { dg-do compile { target i?86-*-* x86_64-*-* } } +// { dg-options "-O1 -fschedule-insns -fselective-scheduling" } + +extern int f (...); + +int +testsum (void *a, int k, int n) +{ + int i, j; + + f (n / 2); + for (i = 0; i < n; i += 8) + for (j = 0; j < n; j += 8) + while (k < n) + k += 8; + + return k; +} -- 2.30.2