This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/21518] [4.0/4.1 Regression] error: unable to find a register to spill in class 'Q_REGS' with -fPIC and -O2
- From: "pinskia at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 11 May 2005 21:23:10 -0000
- Subject: [Bug target/21518] [4.0/4.1 Regression] error: unable to find a register to spill in class 'Q_REGS' with -fPIC and -O2
- References: <20050511195406.21518.couriousous@mandriva.org>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Additional Comments From pinskia at gcc dot gnu dot org 2005-05-11 21:23 -------
Confirmed, here is a testcase for before 4.0.0, if you use this testcase after 4.0.0, use -fno-tree-pre
but that is because we missing a PRE opportunity right now (PR 21520) and if that gets fixed, the
orginal testcase will not ICE any more:
static void __attribute__((regparm(3)))
drawPointsLines (char type, int first, int *dd) {*dd += 1;}
int do_locator (int *call)
{
char prephitmp5;
int type;
int i;
if (call == 0) {prephitmp5 = 1;}
else
{
type = *call;
i = 0;
do {
if (i != type)
drawPointsLines ((int) (char) type, 0, call);
i = i + 1;
} while (i != 2);
prephitmp5 = (char) type;
}
drawPointsLines ((int) prephitmp5, 0, call);
return 0;
}
--
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Ever Confirmed| |1
Known to work|3.4.0 |
Last reconfirmed|0000-00-00 00:00:00 |2005-05-11 21:23:09
date| |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21518