This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: __attribute__((aligned(16)) on x86
- To: "Ryan T. Sammartino" <ryants at home dot com>
- Subject: Re: __attribute__((aligned(16)) on x86
- From: Alexandre Oliva <aoliva at redhat dot com>
- Date: 27 Jul 2001 05:34:43 -0300
- Cc: gcc at gcc dot gnu dot org
- Organization: GCC Team, Red Hat
- References: <20010630161223.A11962@home.com>
On Jun 30, 2001, "Ryan T. Sammartino" <ryants@home.com> wrote:
> The problem is that none of v1, v2 or ret are aligned properly, so the
> first movaps instruction fails.
> I'm willing to dig into gcc source to try and come up with a patch, but
> don't even have a clue where to start looking.
I believe the problem is that the alignment of automatic variables is
limited to PREFERRED_STACK_BOUNDARY and to whatever alignment the C
library sets up in its initialization code. Even though
PREFERRED_STACK_BOUNDARY has defaulted to 16 bytes these days, I think
most (if not all) versions of glibc only guarantee 8-byte alignment of
the stack.
--
Alexandre Oliva Enjoy Guarana', see http://www.ic.unicamp.br/~oliva/
Red Hat GCC Developer aoliva@{cygnus.com, redhat.com}
CS PhD student at IC-Unicamp oliva@{lsd.ic.unicamp.br, gnu.org}
Free Software Evangelist *Please* write to mailing lists, not to me