This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug tree-optimization/34038] 176.gcc segfaults when compiled with -O2 -ftree-vectorize -maltivec
- From: "irar at il dot ibm dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 11 Dec 2007 13:24:29 -0000
- Subject: [Bug tree-optimization/34038] 176.gcc segfaults when compiled with -O2 -ftree-vectorize -maltivec
- References: <bug-34038-4503@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #6 from irar at il dot ibm dot com 2007-12-11 13:24 -------
The first difference I found between with and without -fno-strict-aliasing
versions of the loop in reload.c:2352 is in
with -fno-strict-aliasing (the "bad" one):
(insn 414 413 415 43 ../src/reload.c:2354 (set (reg/f:SI 593 [ D.5672 ])
(mem/s/u/f/j:SI (reg:SI 361 [ ivtmp.3074 ]) [0 insn_operand_constraint
S4 A8])) -1 (nil))
without -fno-strict-aliasing (the "good" one):
(insn 414 413 415 43 ../src/reload.c:2354 (set (reg/f:SI 593 [ D.5672 ])
(mem/s/u/f:SI (reg:SI 361 [ ivtmp.3165 ]) [28 insn_operand_constraint
S4 A8])) -1 (nil))
Since 'j' is related to alias set, I don't know if this difference gives any
information on the reasons for the failure.
In the assemlby the only difference I see is in the order of the stores:
without -fno-strict-aliasing
lwz 31,1032(1)
stvx 0,7,9
stvx 1,8,9
stvx 0,31,9
with -fno-strict-aliasing
stvx 0,7,9
lwz 31,1032(1)
stvx 0,31,9
stvx 1,8,9
I wonder if those differences can explain the problem...
Ira
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34038