https://gcc.gnu.org/bugzilla/show_bug.cgi?id=5738
Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Target Milestone|--- |7.0 Component|rtl-optimization |tree-optimization Resolution|--- |FIXED --- Comment #17 from Andrew Pinski <pinskia at gcc dot gnu.org> --- Fixed in GCC 7 by r7-1935. On the gimple level we get: <bb 3> [local count: 536870913]: _2 = pretmp_31 + 2; s_19(D)->p = _2; goto <bb 5>; [100.00%] <bb 4> [local count: 536870913]: _11 = pretmp_31 + 4; s_19(D)->p = _11; _12 = MEM[(short unsigned int *)pretmp_31 + 2B]; _13 = (int) _12; _23 = _13 << 8; _14 = (unsigned int) _23; _15 = _14 + _28; <bb 5> [local count: 1073741824]: # _6 = PHI <_28(3), _15(4)> *coord_21(D) = _6; The store for s_19(D)->p is not done but I think there might be already another bug about that.