This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug tree-optimization/37573] [4.4 Regression] gcc-4.4 regression: incorrect code generation with -O1 -ftree-vectorize
- 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: 21 Sep 2008 07:54:40 -0000
- Subject: [Bug tree-optimization/37573] [4.4 Regression] gcc-4.4 regression: incorrect code generation with -O1 -ftree-vectorize
- References: <bug-37573-15165@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 2008-09-21 07:54 -------
(In reply to comment #5)
> The data dependence on the previous loop is clearly not considered, the loop is
> vectorized as if c on the rhs and c on the lhs were different non-overlapping
> arrays.
>
The data dependence analysis returns chrec_known for that ddr (probably getting
confused by *&s.c[0] and *&s.c[1] base objects), so the vectorizer thinks they
are independent and vectorizes the loop.
*D.1659_13
base_address: &s.c[0]
offset from base address: 0
constant offset from base address: 0
step: 4
aligned to: 128
base_object: *&s.c[0]
symbol tag: SMT.62
*D.1655_9
base_address: &s.c[1]
offset from base address: 0
constant offset from base address: 0
step: 4
aligned to: 128
base_object: *&s.c[1]
symbol tag: SMT.62
(compute_affine_dependence
(stmt_a =
D.1660_14 = *D.1659_13;
)
(stmt_b =
*D.1655_9 = D.1664_23;
)
)
--
irar at il dot ibm dot com changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |rakdver at gcc dot gnu dot
| |org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37573