Mercurial > libavcodec.hg
comparison ppc/dsputil_ppc.c @ 3949:6020c2f3b16b libavcodec
fix the dcbz check and move it in configure
author | lu_zero |
---|---|
date | Sat, 07 Oct 2006 19:14:25 +0000 |
parents | c8c591fe26f8 |
children | b6f6bf155661 |
comparison
equal
deleted
inserted
replaced
3948:3edbf131ee44 | 3949:6020c2f3b16b |
---|---|
173 POWERPC_PERF_STOP_COUNT(powerpc_clear_blocks_dcbz32, 1); | 173 POWERPC_PERF_STOP_COUNT(powerpc_clear_blocks_dcbz32, 1); |
174 } | 174 } |
175 | 175 |
176 /* same as above, when dcbzl clear a whole 128B cache line | 176 /* same as above, when dcbzl clear a whole 128B cache line |
177 i.e. the PPC970 aka G5 */ | 177 i.e. the PPC970 aka G5 */ |
178 #ifndef NO_DCBZL | 178 #ifdef HAVE_DCBZL |
179 void clear_blocks_dcbz128_ppc(DCTELEM *blocks) | 179 void clear_blocks_dcbz128_ppc(DCTELEM *blocks) |
180 { | 180 { |
181 POWERPC_PERF_DECLARE(powerpc_clear_blocks_dcbz128, 1); | 181 POWERPC_PERF_DECLARE(powerpc_clear_blocks_dcbz128, 1); |
182 register int misal = ((unsigned long)blocks & 0x0000007f); | 182 register int misal = ((unsigned long)blocks & 0x0000007f); |
183 register int i = 0; | 183 register int i = 0; |
203 { | 203 { |
204 memset(blocks, 0, sizeof(DCTELEM)*6*64); | 204 memset(blocks, 0, sizeof(DCTELEM)*6*64); |
205 } | 205 } |
206 #endif | 206 #endif |
207 | 207 |
208 #ifndef NO_DCBZL | 208 #ifdef HAVE_DCBZL |
209 /* check dcbz report how many bytes are set to 0 by dcbz */ | 209 /* check dcbz report how many bytes are set to 0 by dcbz */ |
210 /* update 24/06/2003 : replace dcbz by dcbzl to get | 210 /* update 24/06/2003 : replace dcbz by dcbzl to get |
211 the intended effect (Apple "fixed" dcbz) | 211 the intended effect (Apple "fixed" dcbz) |
212 unfortunately this cannot be used unless the assembler | 212 unfortunately this cannot be used unless the assembler |
213 knows about dcbzl ... */ | 213 knows about dcbzl ... */ |