This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
optimization/8737: Pentium4 + SSE: register to spill in class 'FLOAT_REGS' [minimal example]
- From: demon_lord at myrealbox dot com
- To: gcc-gnats at gcc dot gnu dot org
- Date: 28 Nov 2002 02:13:23 -0000
- Subject: optimization/8737: Pentium4 + SSE: register to spill in class 'FLOAT_REGS' [minimal example]
- Reply-to: demon_lord at myrealbox dot com
>Number: 8737
>Category: optimization
>Synopsis: Pentium4 + SSE: register to spill in class 'FLOAT_REGS' [minimal example]
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: unassigned
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Wed Nov 27 18:16:01 PST 2002
>Closed-Date:
>Last-Modified:
>Originator: Eric Laberge <demon_lord@myrealbox.com>
>Release: GCC 3.2 / 3.2.1
>Organization:
>Environment:
Linux 2.4.19, glibc 2.3.1, SourceMage devel 2002-11-27
>Description:
File test.c:
int main()
{
int a = 1;
float b[1];
float c[1];
float *d = c;
float e[2];
int i;
for (i = 0; i < 4; i++)
{
if (a)
e[0] = (unsigned int)(*b);
*d = e[0] + 1;
}
return 0;
}
Command:
gcc test.c -march=pentium4 -O -mfpath=sse
Error:
test.c: In function `main':
test.c:17: unable to find a register to spill in class `FLOAT_REGS'
test.c:17: this is the insn:
(insn 52 50 53 (set (subreg:SF (reg/v:DI 22 rxmm1 [67]) 0)
(float:SF (reg:DI 0 rax [73]))) 170 {*floatdisf2_i387_only} (nil)
(nil))
test.c:17: confused by earlier errors, bailing out
>How-To-Repeat:
>Fix:
>Release-Note:
>Audit-Trail:
>Unformatted: