https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101257

Jan Hubicka <hubicka at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|---                         |INVALID

--- Comment #7 from Jan Hubicka <hubicka at gcc dot gnu.org> ---
Thanks for testcase.  This indeed is aliasing violation.

We do:

ipa-modref: call stmt md5_single (&buf, digest_18(D));                          
ipa-modref: call to md5_single/11 does not use ref: MEM[(uint64_t *)_8] alias
sets: 3->3

which makes us to optimize it away.  This is uint64_t store from
*((uint64_t *) & buf[i - 8]) = (uint64_t) len *8;
and md5_single does uint32_t loads.

So I am marking this as invalid.

Reply via email to