On Wed, Nov 28, 2012 at 12:43:15PM -0500, Vladimir Makarov wrote: > The following patch fixes > > http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55512 > > The patch was successfully tested and bootstrapped on x86/x86-64. > > Committed as rev. 193901. > > 2012-11-28 Vladimir Makarov <vmaka...@redhat.com> > > PR rtl-optimization/55512 > * lra-assigns.c (assign_by_spills): Assigned arbitrary hard regs > to failed reload pseudos instead of changing asm pattern. > * lra-constraints.c (MAX_CONSTRAINT_ITERATION_NUMBER): Increase > value. > > 2012-11-28 Vladimir Makarov <vmaka...@redhat.com> > > PR rtl-optimization/55512 > * gcc.target/i386/pr55512-[1234].c: New tests.
Thanks, I've tweaked the tests slightly, the #define __builtin_unreachable() was there just to put 4 different tests for 3 different ICEs into one test. 2012-11-29 Jakub Jelinek <ja...@redhat.com> PR rtl-optimization/55512 * gcc.target/i386/pr55512-2.c: Remove unnecessary define. * gcc.target/i386/pr55512-4.c: Likewise. --- gcc.target/i386/pr55512-2.c (revision 193922) +++ gcc.target/i386/pr55512-2.c (revision 193923) @@ -1,8 +1,6 @@ /* { dg-do compile } */ /* { dg-options "-O2" } */ -#define __builtin_unreachable() do { } while (0) - int foo (int x) { @@ -10,7 +8,6 @@ foo (int x) "r" (x + 4), "r" (x + 5), "r" (x + 6), "r" (x + 7), "r" (x + 8), "r" (x + 9), "r" (x + 10), "r" (x + 11), "r" (x + 12), "r" (x + 13), "r" (x + 14), "r" (x + 15) : : lab); - __builtin_unreachable (); lab: return 0; } --- gcc.target/i386/pr55512-4.c (revision 193922) +++ gcc.target/i386/pr55512-4.c (revision 193923) @@ -1,8 +1,6 @@ /* { dg-do compile } */ /* { dg-options "-O2" } */ -#define __builtin_unreachable() do { } while (0) - int bar (int x) { @@ -11,7 +9,6 @@ bar (int x) "r" (x + 8), "r" (x + 9), "r" (x + 10), "r" (x + 11), "r" (x + 12), "r" (x + 13), "r" (x + 14), "r" (x + 15), "r" (x + 16) : : lab); - __builtin_unreachable (); lab: return 0; } Jakub