diff options
author | Luca Barbato <lu_zero@gentoo.org> | 2006-03-29 18:42:50 +0000 |
---|---|---|
committer | Luca Barbato <lu_zero@gentoo.org> | 2006-03-29 18:42:50 +0000 |
commit | 085065f0fd6c21b31647a4e937806feaeb30e75f (patch) | |
tree | ae1c47ea5a1a01fa2db187c3ff5240653558827e | |
parent | c6b1866b73fb3a7e8628172efc30f6233286b0c9 (diff) | |
download | ffmpeg-085065f0fd6c21b31647a4e937806feaeb30e75f.tar.gz |
Cast cruft in order to support Apple gcc
Originally committed as revision 5242 to svn://svn.ffmpeg.org/ffmpeg/trunk
-rw-r--r-- | libavcodec/ppc/dsputil_snow_altivec.c | 116 |
1 files changed, 63 insertions, 53 deletions
diff --git a/libavcodec/ppc/dsputil_snow_altivec.c b/libavcodec/ppc/dsputil_snow_altivec.c index 32c406621b..e5aba7b8fa 100644 --- a/libavcodec/ppc/dsputil_snow_altivec.c +++ b/libavcodec/ppc/dsputil_snow_altivec.c @@ -510,35 +510,39 @@ static void inner_add_yblock_bw_8_obmc_16_altivec(uint8_t *obmc, tmp2 = vec_ld(15, obmc4); ob4 = vec_perm(tmp1,tmp2,align); - h1 = vec_mergeh(ob1, ob2); /*h1 <- [ a,b,a,b, a,b,a,b, + h1 = (vector unsigned short) + vec_mergeh(ob1, ob2); /*h1 <- [ a,b,a,b, a,b,a,b, a,b,a,b, a,b,a,b ] */ - h2 = vec_mergeh(ob3, ob4); /*h2 <- [ c,d,c,d, c,d,c,d, + h2 = (vector unsigned short) + vec_mergeh(ob3, ob4); /*h2 <- [ c,d,c,d, c,d,c,d, c,d,c,d, c,d,c,d ] */ - ih = vec_mergeh(h1,h2); /* ih <- [ a,b,c,d,a,b,c,d,a,b,c,d,a,b,c,d ]*/ + ih = (vector unsigned char) + vec_mergeh(h1,h2); /*ih <- [ a,b,c,d, a,b,c,d, + a,b,c,d, a,b,c,d ]*/ - l1 = vec_mergeh(b3, b2); + l1 = (vector unsigned short) vec_mergeh(b3, b2); - l2 = vec_mergeh(b1, b0); + l2 = (vector unsigned short) vec_mergeh(b1, b0); - il = vec_mergeh(l1,l2); + il = (vector unsigned char) vec_mergeh(l1, l2); - v[0] = vec_msum(ih, il, vec_splat_u32(0)); + v[0] = (vector signed int) vec_msum(ih, il, vec_splat_u32(0)); //step1 - h1 = vec_mergeh(ob1, ob2); + h1 = (vector unsigned short) vec_mergeh(ob1, ob2); - h2 = vec_mergeh(ob3, ob4); + h2 = (vector unsigned short) vec_mergeh(ob3, ob4); - ih = vec_mergel(h1,h2); + ih = (vector unsigned char) vec_mergel(h1, h2); - l1 = vec_mergeh(b3, b2); + l1 = (vector unsigned short) vec_mergeh(b3, b2); - l2 = vec_mergeh(b1, b0); + l2 = (vector unsigned short) vec_mergeh(b1, b0); - il = vec_mergel(l1,l2); + il = (vector unsigned char) vec_mergel(l1, l2); - v[1] = vec_msum(ih, il, vec_splat_u32(0)); + v[1] = (vector signed int) vec_msum(ih, il, vec_splat_u32(0)); #endif @@ -664,69 +668,75 @@ static void inner_add_yblock_bw_16_obmc_32_altivec(uint8_t *obmc, ob4 = vec_perm(tmp1,tmp2,align); //step0 - h1 = vec_mergeh(ob1, ob2); /*h1 <- [ a,b,a,b, - a,b,a,b, - a,b,a,b, - a,b,a,b ] */ - h2 = vec_mergeh(ob3, ob4); /*h2 <- [ c,d,c,d, - c,d,c,d, - c,d,c,d, - c,d,c,d ] */ - - ih = vec_mergeh(h1,h2); /* ih <- [ a,b,c,d,a,b,c,d,a,b,c,d,a,b,c,d ]*/ - - l1 = vec_mergeh(b3, b2); - - l2 = vec_mergeh(b1, b0); - - il = vec_mergeh(l1,l2); - - v[0] = vec_msum(ih, il, vec_splat_u32(0)); + h1 = (vector unsigned short) + vec_mergeh(ob1, ob2); /*h1 <- [ a,b,a,b, + a,b,a,b, + a,b,a,b, + a,b,a,b ] */ + h2 = (vector unsigned short) + vec_mergeh(ob3, ob4); /*h2 <- [ c,d,c,d, + c,d,c,d, + c,d,c,d, + c,d,c,d ] */ + + ih = (vector unsigned char) + vec_mergeh(h1,h2); /*ih <- [ a,b,c,d, + a,b,c,d, + a,b,c,d, + a,b,c,d ]*/ + + l1 = (vector unsigned short) vec_mergeh(b3, b2); + + l2 = (vector unsigned short) vec_mergeh(b1, b0); + + il = (vector unsigned char) vec_mergeh(l1,l2); + + v[0] = (vector signed int) vec_msum(ih, il, vec_splat_u32(0)); //step1 - h1 = vec_mergeh(ob1, ob2); + h1 = (vector unsigned short) vec_mergeh(ob1, ob2); - h2 = vec_mergeh(ob3, ob4); + h2 = (vector unsigned short) vec_mergeh(ob3, ob4); - ih = vec_mergel(h1,h2); + ih = (vector unsigned char) vec_mergel(h1,h2); - l1 = vec_mergeh(b3, b2); + l1 = (vector unsigned short) vec_mergeh(b3, b2); - l2 = vec_mergeh(b1, b0); + l2 = (vector unsigned short) vec_mergeh(b1, b0); - il = vec_mergel(l1,l2); + il = (vector unsigned char) vec_mergel(l1,l2); - v[1] = vec_msum(ih, il, vec_splat_u32(0)); + v[1] = (vector signed int) vec_msum(ih, il, vec_splat_u32(0)); //step2 - h1 = vec_mergel(ob1, ob2); + h1 = (vector unsigned short) vec_mergel(ob1, ob2); - h2 = vec_mergel(ob3, ob4); + h2 = (vector unsigned short) vec_mergel(ob3, ob4); - ih = vec_mergeh(h1,h2); + ih = (vector unsigned char) vec_mergeh(h1,h2); - l1 = vec_mergel(b3, b2); + l1 = (vector unsigned short) vec_mergel(b3, b2); - l2 = vec_mergel(b1, b0); + l2 = (vector unsigned short) vec_mergel(b1, b0); - il = vec_mergeh(l1,l2); + il = (vector unsigned char) vec_mergeh(l1,l2); - v[2] = vec_msum(ih, il, vec_splat_u32(0)); + v[2] = (vector signed int) vec_msum(ih, il, vec_splat_u32(0)); //step3 - h1 = vec_mergel(ob1, ob2); + h1 = (vector unsigned short) vec_mergel(ob1, ob2); - h2 = vec_mergel(ob3, ob4); + h2 = (vector unsigned short) vec_mergel(ob3, ob4); - ih = vec_mergel(h1,h2); + ih = (vector unsigned char) vec_mergel(h1,h2); - l1 = vec_mergel(b3, b2); + l1 = (vector unsigned short) vec_mergel(b3, b2); - l2 = vec_mergel(b1, b0); + l2 = (vector unsigned short) vec_mergel(b1, b0); - il = vec_mergel(l1,l2); + il = (vector unsigned char) vec_mergel(l1,l2); - v[3] = vec_msum(ih, il, vec_splat_u32(0)); + v[3] = (vector signed int) vec_msum(ih, il, vec_splat_u32(0)); #if 1 for(x=0; x<b_w; x++) if(add){ |