Dorit Nuzman writes: > > Tim Prince writes: > > > kanishk rastogi wrote: > > > > hi all, > > > > I wanted to know if when i specify -O[0-3] flag to gcc does gcc > > > > optimize the code even violating ABI for that specific arch. > > > > If yes can i specify gcc not to violate the ABI .... > > > > I am mostly concerned witht he ABI specification which tells how to > > > > call another function.. > > > > > > Only the -Os changes the value of -mpreferred-stack-boundary, breaking > > > the ability to support vectorization or other alignment dependent code > > > in the callee. > > > > -Os breaks vectorization? That would be A Bug, for sure. Do you have > > references, Bugzilla entries, for this? > > I don't think -mpreferred-stack-boundary breaks vectorization, but it can > affect vectorization because vectorization is sensitive to alignment, and > the ability to force the alignment of arrays on the stack currently depends > on the preferred stack boundary. You can see > http://gcc.gnu.org/ml/gcc-patches/2007-10/msg00202.html for more details. Geer Bosch asked "Can't we just explicitly align the stack frame to 128-bits during the function prologue, when we know that there are locals that require such alignment?" This seems so obvious that I can't understand why it hasn't been done. Andrew.