]> git.pld-linux.org Git - packages/fftw3.git/blob - fftw-gcc4.patch
- fix altivec build (it should work with gcc-3.3.x too but not tested).
[packages/fftw3.git] / fftw-gcc4.patch
1 --- fftw-3.0.1/simd/altivec.c.orig      2003-03-15 21:29:43.000000000 +0100
2 +++ fftw-3.0.1/simd/altivec.c   2005-05-25 20:55:26.000000000 +0200
3 @@ -26,15 +26,14 @@
4  #if HAVE_ALTIVEC
5  
6  const vector unsigned int X(altivec_ld_selmsk) = 
7 -   (vector unsigned int)VLIT(0, 0, 0xFFFFFFFF, 0xFFFFFFFF);
8 +   (const vector unsigned int)VLIT(0, 0, 0xFFFFFFFF, 0xFFFFFFFF);
9  
10  const vector unsigned int X(altivec_flipri_perm) = 
11 -   (vector unsigned int)VLIT(0x04050607, 0x00010203,
12 -                            0x0c0d0e0f, 0x08090a0b);
13 +   (const vector unsigned int)VLIT(0x04050607, 0x00010203, 0x0c0d0e0f, 0x08090a0b);
14  
15  const vector float X(altivec_chsr_sgn) = 
16 -   (vector float)VLIT(-1.0, 1.0, -1.0, 1.0);
17 +   (const vector float)VLIT(-1.0, 1.0, -1.0, 1.0);
18  const vector float X(altivec_chsr_msk) = 
19 -   (vector float)VLIT(-0.0, 0.0, -0.0, 0.0);
20 +   (const vector float)VLIT(-0.0, 0.0, -0.0, 0.0);
21  
22  #endif
23 --- fftw-3.0.1/simd/simd-altivec.h.orig 2003-03-21 13:45:48.000000000 +0100
24 +++ fftw-3.0.1/simd/simd-altivec.h      2005-05-25 20:57:22.000000000 +0200
25 @@ -92,14 +92,15 @@
26    return (vector float) __builtin_altivec_vxor ((vector signed int) a1, (vector signed int) a2);
27  }
28  
29 -#define VLIT(x0, x1, x2, x3) {x0, x1, x2, x3}
30 -
31  #else /* !__VEC__ */
32  
33 -#define VLIT(x0, x1, x2, x3) (x0, x1, x2, x3)
34 +/* gcc provides altivec builtins */
35 +#include <altivec.h>
36  
37  #endif
38  
39 +#define VLIT(x0, x1, x2, x3) {x0, x1, x2, x3}
40 +
41  typedef vector float V;
42  #define VADD(a, b) vec_add(a, b)
43  #define VSUB(a, b) vec_sub(a, b)
This page took 0.045851 seconds and 3 git commands to generate.