------- Comment #7 from matz at gcc dot gnu dot org  2010-02-01 11:53 -------
Or making STRICT_ALIGNMENT depend on the type or mode.  So that e.g.
"!align(8) && align(4) && !STRICT_ALIGN(long long)" would be acceptable,
but "!align(16) && STRICT_ALIGN(m128d)" would not.  Or making it depend
on the typesize, so that strictness would only come into play when the type is
larger than 8 byte.  Or something like that.

I don't think propagating down (mis)alignment would help in the general case.
Some instructions simply aren't possible with misaligned memory, and need
large compensation code.  In that case we also wouldn't want to use the
incoming stack slot for -Os.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42919

Reply via email to