On 21 Feb 2012 at 10:39, VáclavSmilauer wrote: > > Aligning to 128 bits is surely __attribute__((__aligned__(16)))? > > Oops, I wrote it wrong in the title, it is 128-bytes aligned, double[16] with > natural alignment, i.e. __attribute__((aligned(128))). > > Thanks for comments, I will try to put it into the bugtracker.
128 *byte* alignment? Wow. No, no compiler will support that legally as it would crap all over your stack frame. I vaguely remember that GCC caps alignment to 40 bytes due to some supported architecture's stack frame being incapable of going higher. If you're aligning to 128 bytes then you almost certainly need to revisit how your code is designed and what algorithms are being used. I can think of two occasions ever in my life where I have seen an alignment larger than 32 bytes being a reasonably good idea, and one of those was in ptmalloc2 (which masks off the bottom megabyte of bits as a very fast way of finding the segment for a pointer). And even in ptmalloc2 I am unconvinced that approach was wise due to many reasons unimportant to mention here. Niall -- Technology & Consulting Services - ned Productions Limited. http://www.nedproductions.biz/. VAT reg: IE 9708311Q. Company no: 472909. _______________________________________________ Cplusplus-sig mailing list Cplusplus-sig@python.org http://mail.python.org/mailman/listinfo/cplusplus-sig