This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/44948] -mavx changes ABI
- From: "hjl dot tools at gmail dot com" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 15 Jul 2010 22:29:39 -0000
- Subject: [Bug target/44948] -mavx changes ABI
- References: <bug-44948-87@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- 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