Regression in gcc-2.95 19990525
H.J. Lu
hjl@varesearch.com
Wed May 26 06:32:00 GMT 1999
With gcc 2.95 19990525, I got this on x86:
# gcc -S -O3 -mcpu=i686 -march=i686 foo.c
foo.c: In function `main':
foo.c:27: Could not split insn
(insn 116 112 61 (set (reg/v:SI 5 %edi)
(if_then_else:SI (ne:SI (reg/v:SI 3 %ebx)
(mem/s:SI (plus:SI (mult:SI (reg/v:SI 4 %esi)
(const_int 4 [0x4]))
(reg:SI 0 %eax)) 3))
(mem/s:SI (plus:SI (mult:SI (reg/v:SI 4 %esi)
(const_int 4 [0x4]))
(mem/f:SI (plus:SI (reg:SI 6 %ebp)
(const_int 12 [0xc])) 0)) 3)
(reg/v:SI 5 %edi))) 414 {movsicc+2} (insn_list/j/c 112 (insn_list/j
138 (insn_list/j/c 112 (nil))))
(expr_list:REG_DEAD (reg:SI 0 %eax)
(nil)))
egcs 1.1.2 is ok. It is a new bug.
--
H.J. Lu (hjl@gnu.org)
---foo.c--
extern int optind;
extern char * foo ();
int main(int argc, char **argv)
{
int i, c;
char *cp, *so;
const char *dir;
for (i = optind; i < argc; i++)
{
if (!(cp = foo ()))
{
dir = ".";
cp = argv[i];
}
else
{
if (cp == argv[i])
dir = "/";
else
dir = argv[i];
*cp++ = '\0';
}
if (so = foo () )
error("%s%s%s is not a shared library", dir, so, cp);
}
}
More information about the Gcc-bugs
mailing list