On Wed, May 03, 2017 at 06:39:18PM +0200, Jan Hubicka wrote: > > On Wed, May 03, 2017 at 06:18:08PM +0200, Jan Hubicka wrote: > > > Hi, > > > my change to sreals makes GCC to be miscompiled with GCC 4.1 and -O0. > > > This is > > > related to fact that using sreal implies a non-trivial constructor and > > > thus > > > ggc_cleared_alloc is no longer standard compliant. I however do not > > > quite understand > > > why GCC 4.1 manages to misoptimize this code but I have checked that this > > > helps > > > to fix the issue and hopefully will re-start our periodic testers. > > > > Is store-merging pass able to optimize that back into reasonable code > > (sure, not into ggc_cleared_alloc)? > > It is still a sequence of assignments to 0 in .optimized pass.
Including the bool fields that are adjacent? Jakub