comparison internal.h @ 374:8805bba131a9 libavutil

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.
author ramiro
date Mon, 13 Aug 2007 15:28:29 +0000
parents 4d3f4347b718
children 5a85ad617615
comparison
equal deleted inserted replaced
373:c3b57cc542e0 374:8805bba131a9
31 #endif 31 #endif
32 32
33 #include <stdint.h> 33 #include <stdint.h>
34 #include <stddef.h> 34 #include <stddef.h>
35 #include <assert.h> 35 #include <assert.h>
36
37 #ifndef attribute_align_arg
38 #if defined(__GNUC__) && (__GNUC__ > 4 || __GNUC__ == 4 && __GNUC_MINOR__>1)
39 # define attribute_align_arg __attribute__((force_align_arg_pointer))
40 #else
41 # define attribute_align_arg
42 #endif
43 #endif
36 44
37 #ifndef attribute_used 45 #ifndef attribute_used
38 #if defined(__GNUC__) && (__GNUC__ > 3 || __GNUC__ == 3 && __GNUC_MINOR__ > 0) 46 #if defined(__GNUC__) && (__GNUC__ > 3 || __GNUC__ == 3 && __GNUC_MINOR__ > 0)
39 # define attribute_used __attribute__((used)) 47 # define attribute_used __attribute__((used))
40 #else 48 #else