On Mon, Nov 11, 2013 at 02:13:24PM +0100, Richard Biener wrote: > On Mon, Nov 11, 2013 at 12:39 PM, Jakub Jelinek <ja...@redhat.com> wrote: > > On Mon, Nov 11, 2013 at 12:29:29PM +0100, Richard Biener wrote: > >> On Fri, Nov 8, 2013 at 6:51 PM, Hendrik Greving > >> <hendrik.greving.in...@gmail.com> wrote: > >> > That didn't do it. What was the rationale w.r.t. to the relation > >> > between the vectorized sequenced and/or the alignment (I think these > >> > things are actually 2 separate things..) and the common block?! > >> > >> We cannot adjust the alignment of a common block as we don't know > >> which common block the linker will pick in the end. We can (and do) > >> adjust the alignment of global variables though. And C++ defaults > >> to -fno-common. > >> > >> In general when asking optimization questions it helps to provide > >> a testcase that can be compiled - otherwise you just provoke > >> random guesses (like mine) ;) > > > > Well, we had the discussion about turning -fno-common by default for C as > > well, I think it wouldn't hurt and let people use -fcommon if they need it. > > Yeah, so ... shall we just do it? Maybe just for a selected set of > targets (based on OS?)?
I vote for it. Perhaps with the exception when the variables are also weak, this worst case results in a link time failure which is easily fixable by adding -fcommon where really required, and in the usual case (dynamic linking) it is limited to the each package individually, if we document this in porting_to.html, I think changing the default is fine. But I guess it would be nice to hear more voices. Jakub