comparison libmpeg2/idct_altivec.c @ 25980:11181df06389

Do not check for __APPLE_ALTIVEC__, just check for __APPLE_CC__. This should work even when -faltivec is not specified.
author diego
date Sat, 16 Feb 2008 17:44:49 +0000
parents f6881c789312
children 4559d4a7c3cb
comparison
equal deleted inserted replaced
25979:ebb3be14974e 25980:11181df06389
39 typedef vector signed short vector_s16_t; 39 typedef vector signed short vector_s16_t;
40 typedef vector unsigned short vector_u16_t; 40 typedef vector unsigned short vector_u16_t;
41 typedef vector signed int vector_s32_t; 41 typedef vector signed int vector_s32_t;
42 typedef vector unsigned int vector_u32_t; 42 typedef vector unsigned int vector_u32_t;
43 43
44 #if defined( HAVE_ALTIVEC_H ) && !defined( __APPLE_ALTIVEC__ ) && (__GNUC__ * 100 + __GNUC_MINOR__ < 303) 44 #if defined(HAVE_ALTIVEC_H) && !defined(__APPLE_CC__) && (__GNUC__ * 100 + __GNUC_MINOR__ < 303)
45 /* work around gcc <3.3 vec_mergel bug */ 45 /* work around gcc <3.3 vec_mergel bug */
46 static inline vector_s16_t my_vec_mergel (vector_s16_t const A, 46 static inline vector_s16_t my_vec_mergel (vector_s16_t const A,
47 vector_s16_t const B) 47 vector_s16_t const B)
48 { 48 {
49 static const vector_u8_t mergel = { 49 static const vector_u8_t mergel = {
54 } 54 }
55 #undef vec_mergel 55 #undef vec_mergel
56 #define vec_mergel my_vec_mergel 56 #define vec_mergel my_vec_mergel
57 #endif 57 #endif
58 58
59 #if defined( __APPLE_CC__ ) && defined( __APPLE_ALTIVEC__ ) /* apple */ 59 #if defined(__APPLE_CC__) /* apple */
60 #define VEC_S16(a,b,c,d,e,f,g,h) (vector_s16_t) (a, b, c, d, e, f, g, h) 60 #define VEC_S16(a,b,c,d,e,f,g,h) (vector_s16_t) (a, b, c, d, e, f, g, h)
61 #else /* gnu */ 61 #else /* gnu */
62 #define VEC_S16(a,b,c,d,e,f,g,h) {a, b, c, d, e, f, g, h} 62 #define VEC_S16(a,b,c,d,e,f,g,h) {a, b, c, d, e, f, g, h}
63 #endif 63 #endif
64 64