diff options
Diffstat (limited to 'libavcodec/ppc/dsputil_ppc.c')
-rw-r--r-- | libavcodec/ppc/dsputil_ppc.c | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/libavcodec/ppc/dsputil_ppc.c b/libavcodec/ppc/dsputil_ppc.c index 8713e89..055a8f0 100644 --- a/libavcodec/ppc/dsputil_ppc.c +++ b/libavcodec/ppc/dsputil_ppc.c @@ -25,6 +25,17 @@ int mm_flags = 0; +int mm_support(void) +{ + int result = 0; +#if HAVE_ALTIVEC + if (has_altivec()) { + result |= MM_ALTIVEC; + } +#endif /* result */ + return result; +} + void dsputil_init_ppc(DSPContext* c, unsigned mask) { // Common optimisations whether Altivec or not @@ -41,13 +52,19 @@ void dsputil_init_ppc(DSPContext* c, unsigned mask) c->pix_abs16x16_xy2 = pix_abs16x16_xy2_altivec; c->pix_abs16x16 = pix_abs16x16_altivec; c->pix_abs8x8 = pix_abs8x8_altivec; + c->sad[0]= sad16x16_altivec; + c->sad[1]= sad8x8_altivec; c->pix_norm1 = pix_norm1_altivec; c->sse[1]= sse8_altivec; c->sse[0]= sse16_altivec; c->pix_sum = pix_sum_altivec; c->diff_pixels = diff_pixels_altivec; c->get_pixels = get_pixels_altivec; - +// next one disabled as it it untested. +#if 0 + c->add_bytes= add_bytes_altivec; +#endif + c->gmc1 = gmc1_altivec; } else #endif { |