re PR target/55277 (ICE in assign_by_spills, at lra-assigns.c:1217)

2012-11-26  Vladimir Makarov  <vmakarov@redhat.com>

	PR target/55277
	* gcc.target/i386/pr55227.c: New test.

2012-11-26  Vladimir Makarov  <vmakarov@redhat.com>

	PR target/55277
	* lra-constraints.c (in_class_p): Check reg class contents too.

From-SVN: r193824
This commit is contained in:
Vladimir Makarov 2012-11-26 18:08:44 +00:00 committed by Vladimir Makarov
parent 119103ca7b
commit f421c426a2
4 changed files with 31 additions and 1 deletions

View File

@ -1,3 +1,8 @@
2012-11-26 Vladimir Makarov <vmakarov@redhat.com>
PR target/55277
* lra-constraints.c (in_class_p): Check reg class contents too.
2012-11-26 James Greenhalgh <james.greenhalgh@arm.com>
* config/aarch64/aarch64-builtins.c (aarch64_builtin_decls): New.

View File

@ -293,7 +293,9 @@ in_class_p (rtx reg, enum reg_class cl, enum reg_class *new_class)
if (nregs == 1)
return true;
for (j = 0; j < nregs; j++)
if (TEST_HARD_REG_BIT (lra_no_alloc_regs, hard_regno + j))
if (TEST_HARD_REG_BIT (lra_no_alloc_regs, hard_regno + j)
|| ! TEST_HARD_REG_BIT (reg_class_contents[common_class],
hard_regno + j))
break;
if (j >= nregs)
return true;

View File

@ -1,3 +1,8 @@
2012-11-26 Vladimir Makarov <vmakarov@redhat.com>
PR target/55277
* gcc.target/i386/pr55227.c: New test.
2012-11-26 Steven Bosscher <steven@gcc.gnu.org>
* testsuite/gcc.dg/20050811-1.c: Change -dv option to -graph option

View File

@ -0,0 +1,18 @@
/* { dg-do compile } */
/* { dg-require-effective-target ilp32 } */
/* { dg-options "-O1" } */
int a, c;
void f(long long p)
{
long long b;
if(b)
b = p ? : 0;
for (; p; p++)
p *= a & (c = p *= !a < 2);
a = b += !(b & 3740917449u);
}