# HG changeset patch # User ramiro # Date 1187018909 0 # Node ID 8805bba131a980620d45cc6b9dfcd03e04c3d1d3 # Parent c3b57cc542e0d2d7d65a91075ff5c664336522a6 Add attribute that forces alignment of stack to functions that need it. Necessary for systems that don't align by default to 16 bytes, required by some SSE instructions. Requires GCC >= 4.2. Based on patch by Ga¸«³l Chardon. diff -r c3b57cc542e0 -r 8805bba131a9 internal.h --- a/internal.h Sat Aug 11 21:59:01 2007 +0000 +++ b/internal.h Mon Aug 13 15:28:29 2007 +0000 @@ -34,6 +34,14 @@ #include #include +#ifndef attribute_align_arg +#if defined(__GNUC__) && (__GNUC__ > 4 || __GNUC__ == 4 && __GNUC_MINOR__>1) +# define attribute_align_arg __attribute__((force_align_arg_pointer)) +#else +# define attribute_align_arg +#endif +#endif + #ifndef attribute_used #if defined(__GNUC__) && (__GNUC__ > 3 || __GNUC__ == 3 && __GNUC_MINOR__ > 0) # define attribute_used __attribute__((used))