Browse Source

disable hadamard for gcc below 3.3 - better fix awaited

Originally committed as revision 3075 to svn://svn.ffmpeg.org/ffmpeg/trunk
tags/v0.5
Alex Beregszaszi 21 years ago
parent
commit
d890d4aed1
2 changed files with 4 additions and 0 deletions
  1. +2
    -0
      libavcodec/ppc/dsputil_altivec.c
  2. +2
    -0
      libavcodec/ppc/dsputil_ppc.c

+ 2
- 0
libavcodec/ppc/dsputil_altivec.c View File

@@ -1302,6 +1302,7 @@ POWERPC_PERF_STOP_COUNT(altivec_put_no_rnd_pixels16_xy2_num, 1);
#endif /* ALTIVEC_USE_REFERENCE_C_CODE */
}

#if (__GNUC__ * 100 + __GNUC_MINOR__ >= 330)
int hadamard8_diff8x8_altivec(/*MpegEncContext*/ void *s, uint8_t *dst, uint8_t *src, int stride, int h){
POWERPC_PERF_DECLARE(altivec_hadamard8_diff8x8_num, 1);
int sum;
@@ -1611,6 +1612,7 @@ POWERPC_PERF_START_COUNT(altivec_hadamard8_diff16_num, 1);
POWERPC_PERF_STOP_COUNT(altivec_hadamard8_diff16_num, 1);
return score;
}
#endif

int has_altivec(void)
{


+ 2
- 0
libavcodec/ppc/dsputil_ppc.c View File

@@ -279,8 +279,10 @@ void dsputil_init_ppc(DSPContext* c, AVCodecContext *avctx)
c->gmc1 = gmc1_altivec;

#if (__GNUC__ * 100 + __GNUC_MINOR__ >= 330)
c->hadamard8_diff[0] = hadamard8_diff16_altivec;
c->hadamard8_diff[1] = hadamard8_diff8x8_altivec;
#endif

#ifdef CONFIG_ENCODERS
if (avctx->dct_algo == FF_DCT_AUTO ||


Loading…
Cancel
Save