248 |
| gcc PPC and PPC Altivec specific macros/functions |
| gcc PPC and PPC Altivec specific macros/functions |
249 |
*---------------------------------------------------------------------------*/ |
*---------------------------------------------------------------------------*/ |
250 |
# elif defined(ARCH_IS_PPC) |
# elif defined(ARCH_IS_PPC) |
251 |
|
|
252 |
|
# if defined(HAVE_ALTIVEC_PARENTHESES_DECL) |
253 |
|
# define AVV(x...) (x) |
254 |
|
# elif defined(HAVE_ALTIVEC_BRACES_DECL) |
255 |
|
# define AVV(x...) {x} |
256 |
|
# else |
257 |
|
# error Trying to compile PPC target without a vector declaration type. |
258 |
|
# endif |
259 |
|
|
260 |
# define BSWAP(a) __asm__ __volatile__ \ |
# define BSWAP(a) __asm__ __volatile__ \ |
261 |
( "lwbrx %0,0,%1; eieio" : "=r" (a) : "r" (&(a)), "m" (a)); |
( "lwbrx %0,0,%1; eieio" : "=r" (a) : "r" (&(a)), "m" (a)); |
262 |
|
|