------- Comment #17 from sherpya at netfarm dot it 2008-09-29 16:30 -------
with both patches I can achieve align 16
align > 16 on globals still fails
Local Aligned 16: 0
Local Aligned 32: 0
Global Aligned 16: 0
Global Aligned 32: 16
the program is:
#include <stdio.h>
#include <stdlib.h>
#include <inttypes.h>
static int local_16[8] __attribute__ ((aligned (16)));
static int local_32[8] __attribute__ ((aligned (32)));
int global_16[8] __attribute__ ((aligned (16)));
int global_32[8] __attribute__ ((aligned (32)));
int main(void)
{
printf("Local Aligned 16: %d\n", (intptr_t) local_16 % 16);
printf("Local Aligned 32: %d\n", (intptr_t) local_32 % 32);
printf("Global Aligned 16: %d\n", (intptr_t) global_16 % 16);
printf("Global Aligned 32: %d\n", (intptr_t) global_32 % 32);
return 0;
}
did I miss something?
(perhaps 16 byte alignment it's enough for sse)
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37216