This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug middle-end/52650] [4.8 Regression] FAIL: gcc.dg/torture/pr51106-2.c * (internal compiler error)
- From: "ro at CeBiTec dot Uni-Bielefeld.DE" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Wed, 21 Mar 2012 15:51:23 +0000
- Subject: [Bug middle-end/52650] [4.8 Regression] FAIL: gcc.dg/torture/pr51106-2.c * (internal compiler error)
- Auto-submitted: auto-generated
- References: <bug-52650-4@http.gcc.gnu.org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52650
--- Comment #7 from ro at CeBiTec dot Uni-Bielefeld.DE <ro at CeBiTec dot Uni-Bielefeld.DE> 2012-03-21 15:51:23 UTC ---
> and with #if 1 they fail? As they are wrong-code regressions on
> an architecture I have no access to, can you see what is the issue here?
Right. I've compared assembler output for
FAIL: gcc.dg/torture/20090618-1.c -O1 execution test
which aborts with the #if 1 code:
> diff -u 285{,.orig}/gcc/testsuite/gcc/20090618-1.s
--- 285/gcc/testsuite/gcc/20090618-1.s 2012-03-21 16:38:25.780827400 +0100
+++ 285.orig/gcc/testsuite/gcc/20090618-1.s 2012-03-21 16:38:13.525278500
+0100
@@ -6,10 +6,7 @@
.proc 04
foo:
add %sp, -96, %sp
- st %g0, [%sp+92]
- mov 1, %g1
- st %g1, [%sp+88]
- mov 1, %o0
+ ld [%sp+88], %o0
jmp %o7+8
sub %sp, -96, %sp
.size foo, .-foo
As you can see, the i = 0, j = 1 initializations are lost completely,
and the ld insn reads from an uninitialized stack slot.
Rainer