Originally committed as revision 5916 to svn://svn.ffmpeg.org/ffmpeg/trunk
pull/126/head
Luca Barbato 19 years ago
parent 8047fe72a9
commit 7c2a270b70
  1. 12
      libavcodec/ppc/dsputil_altivec.c

@ -1702,7 +1702,7 @@ static void vorbis_inverse_coupling_altivec(float *mag, float *ang,
int blocksize)
{
int i;
vector float m, a;
vector float m, a, s0, s1;
vector bool int t0, t1;
const vector unsigned int v_31 = //XXX
vec_add(vec_add(vec_splat_u32(15),vec_splat_u32(15)),vec_splat_u32(1));
@ -1711,11 +1711,11 @@ static void vorbis_inverse_coupling_altivec(float *mag, float *ang,
a = vec_ld(0, ang+i);
t0 = vec_cmple(m, (vector float)vec_splat_u32(0));
t1 = vec_cmple(a, (vector float)vec_splat_u32(0));
a = vec_xor(a, vec_sl((vector unsigned int)t0, v_31)); // (a ^ sign(m))
t0 = vec_and(a, t1);
t1 = vec_andc(a, t1);
a = vec_add(m, t0);
m = vec_sub(m, t1);
a = vec_xor(a, (vector float) vec_sl((vector unsigned int)t0, v_31));
s0 = vec_and(a, t1);
s1 = vec_andc(a, t1);
a = vec_add(m, s0);
m = vec_sub(m, s1);
vec_ste(a, 0, ang+i);
vec_ste(m, 0, mag+i);
}

Loading…
Cancel
Save