http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55334
--- Comment #27 from rguenther at suse dot de <rguenther at suse dot de> 2013-02-19 13:49:30 UTC --- On Tue, 19 Feb 2013, jamborm at gcc dot gnu.org wrote: > > http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55334 > > --- Comment #26 from Martin Jambor <jamborm at gcc dot gnu.org> 2013-02-19 > 12:54:27 UTC --- > (In reply to comment #25) > > > > That won't work (read: it will cause miscompiles). I believe with the > > most recent data-dependence reorg I added a bunch of testcases that show > > how to create breaking testcases ;) > > Yes, it even already miscompiles a few testcases in the testsuite. I > mainly wanted to say that the vectorizer is not the only problem. > Which means that we probably want to preserve restrict across IPA > optimizations. > > Another idea, which Honza mentioned last time I spoke to him, was that > perhaps not lowering &x.u and other COMPONENT_REFs into MEM_REFs would > be enough to figure out the accesses do not alias, but I am not sure > that is true in gimple (or why tree-inline does this in the first > place). Yes, preserving COMPONENT_REFs would help here, but it is not correct (even for this testcase the types do not match). Richard.