"Fossies" - the Fresh Open Source Software Archive  

Source code changes of the file "libavcodec/ppc/apedsp_altivec.c" between
libav-11.7.tar.gz and libav-11.8.tar.gz

About: libav provides cross-platform tools ("avconv") and libraries to convert, manipulate and stream a wide range of multimedia (audio and video) formats and protocols.

apedsp_altivec.c  (libav-11.7):apedsp_altivec.c  (libav-11.8)
skipping to change at line 32 skipping to change at line 32
#if HAVE_ALTIVEC_H #if HAVE_ALTIVEC_H
#include <altivec.h> #include <altivec.h>
#endif #endif
#include "libavutil/attributes.h" #include "libavutil/attributes.h"
#include "libavutil/cpu.h" #include "libavutil/cpu.h"
#include "libavutil/ppc/cpu.h" #include "libavutil/ppc/cpu.h"
#include "libavutil/ppc/types_altivec.h" #include "libavutil/ppc/types_altivec.h"
#include "libavcodec/apedsp.h" #include "libavcodec/apedsp.h"
#if HAVE_ALTIVEC #if HAVE_ALTIVEC && HAVE_BIGENDIAN
static int32_t scalarproduct_and_madd_int16_altivec(int16_t *v1, static int32_t scalarproduct_and_madd_int16_altivec(int16_t *v1,
const int16_t *v2, const int16_t *v2,
const int16_t *v3, const int16_t *v3,
int order, int mul) int order, int mul)
{ {
LOAD_ZERO; LOAD_ZERO;
vec_s16 *pv1 = (vec_s16 *) v1; vec_s16 *pv1 = (vec_s16 *) v1;
register vec_s16 muls = { mul, mul, mul, mul, mul, mul, mul, mul }; register vec_s16 muls = { mul, mul, mul, mul, mul, mul, mul, mul };
register vec_s16 t0, t1, i0, i1, i4; register vec_s16 t0, t1, i0, i1, i4;
register vec_s16 i2 = vec_ld(0, v2), i3 = vec_ld(0, v3); register vec_s16 i2 = vec_ld(0, v2), i3 = vec_ld(0, v3);
skipping to change at line 76 skipping to change at line 76
} while (--order); } while (--order);
res = vec_splat(vec_sums(res, zero_s32v), 3); res = vec_splat(vec_sums(res, zero_s32v), 3);
vec_ste(res, 0, &ires); vec_ste(res, 0, &ires);
return ires; return ires;
} }
#endif /* HAVE_ALTIVEC */ #endif /* HAVE_ALTIVEC */
av_cold void ff_apedsp_init_ppc(APEDSPContext *c) av_cold void ff_apedsp_init_ppc(APEDSPContext *c)
{ {
#if HAVE_ALTIVEC #if HAVE_ALTIVEC && HAVE_BIGENDIAN
if (!PPC_ALTIVEC(av_get_cpu_flags())) if (!PPC_ALTIVEC(av_get_cpu_flags()))
return; return;
c->scalarproduct_and_madd_int16 = scalarproduct_and_madd_int16_altivec; c->scalarproduct_and_madd_int16 = scalarproduct_and_madd_int16_altivec;
#endif /* HAVE_ALTIVEC */ #endif /* HAVE_ALTIVEC */
} }
 End of changes. 2 change blocks. 
2 lines changed or deleted 2 lines changed or added

Home  |  About  |  All  |  Newest  |  Fossies Dox  |  Screenshots  |  Comments  |  Imprint  |  Privacy  |  HTTPS