This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug tree-optimization/26587] [4.1/4.2 Regression] strict aliasing incorrectly pre-loads an array element with loops
- From: "rguenth at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 7 Mar 2006 10:43:24 -0000
- Subject: [Bug tree-optimization/26587] [4.1/4.2 Regression] strict aliasing incorrectly pre-loads an array element with loops
- References: <bug-26587-12319@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #8 from rguenth at gcc dot gnu dot org 2006-03-07 10:43 -------
With -O2 -fno-ivopts -fno-tree-vrp -fno-tree-salias -fno-strict-aliasing we
correctly get
<L11>:;
# BF_current_23 = PHI <BF_current_21(5), BF_current_24(7)>;
# ptr_3 = PHI <&BF_current.P[0](5), ptr_9(7)>;
# L_2 = PHI <0(5), L_14(7)>;
<L7>:;
ptr_9 = ptr_3 + 8B;
# VUSE <BF_current_23>;
D.1541_10 = BF_current.P[0];
L_11 = L_2 ^ D.1541_10;
tmp4_12 = L_11 >> 24;
# VUSE <BF_current_23>;
D.1542_13 = BF_current.P[17];
L_14 = tmp4_12 ^ D.1542_13;
D.1543_15 = ptr_9 - 8B;
# BF_current_24 = V_MAY_DEF <BF_current_23>;
*D.1543_15 = L_14;
if (ptr_9 < &BF_current.P[18]) goto <L12>; else goto <L4>;
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=26587