This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug bootstrap/47187] New: [4.6 Regression] profiledbootstrap failure on i386
- From: "jakub at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Thu, 6 Jan 2011 10:01:40 +0000
- Subject: [Bug bootstrap/47187] New: [4.6 Regression] profiledbootstrap failure on i386
- Auto-submitted: auto-generated
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47187
Summary: [4.6 Regression] profiledbootstrap failure on i386
Product: gcc
Version: 4.6.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: bootstrap
AssignedTo: unassigned@gcc.gnu.org
ReportedBy: jakub@gcc.gnu.org
profiledbootstrap currently fails on i386, with --enable-checking=release rtl.c
(copy_rtx) is miscompiled (after giving a bogus warning that copy is
uninitialized (well, in the generated code it is), with checking it ICEs:
../../gcc/rtl.c: In function âcopy_rtxâ:
../../gcc/rtl.c:236:1: error: SSA_NAME_DEF_STMT is wrong
Expected definition statement:
# .MEM_93 = VDEF <.MEM_91>
D.27976_89 = memcpy (copy.26_86, orig.25_85, 12);
Actual definition statement:
# .MEM_92 = VDEF <.MEM_91>
D.27976_89 = memcpy (copy.26_86, orig.25_85, D.27973_83);
../../gcc/rtl.c:236:1: internal compiler error: verify_ssa failed
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.
This is caused by a bug in gimple_stringop_fixed_value where it doesn't handle
lhs properly. Small testcase:
char buf[64];
char buf2[64];
void *
foo (char *p, long size)
{
return __builtin_memcpy (buf, p, size);
}
int
main (void)
{
long i;
for (i = 0; i < 65536; i++)
if (foo ("abcdefghijkl", 12) != buf)
__builtin_abort ();
if (foo (buf2, 64) != buf)
__builtin_abort ();
return 0;
}
./xgcc -B ./ -O2 -fprofile-generate test.c -o test
./test
./xgcc -B ./ -O2 -fprofile-use test.c -o test