------- Comment #15 from hjl dot tools at gmail dot com 2010-07-15 22:29 ------- (In reply to comment #4) > (In reply to comment #2) > > If we want to be ABI compatible, I'm afraid it needs to be 16 byte aligned > > only. > > We don't align aligned(64) structs to 64 bytes either, even with -mavx. > > > > That is because we couldn't align stack before gcc 4.4. > We may use 256bit aligned insns to copy 32byte aligned > memory. It is odd when 32byte aligned type may not be > 32byte aligned when passed on stack. We may not have a > choice before gcc 4.4. I don't see why we have to do > it now. We can always issue a warning like what we did > for other ABI changes. > > But I have no strong opinions on how to fix it. >
Icc always align struct properly when passed on stack. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44948