mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-11-21 10:55:51 +02:00
ppc: dsputil: Simplify some ifdeffed function definitions
This commit is contained in:
parent
8bd6f88266
commit
b045283f21
@ -74,9 +74,9 @@ static void clear_blocks_dcbz32_ppc(int16_t *blocks)
|
||||
|
||||
/* Same as above, when dcbzl clears a whole 128 bytes cache line
|
||||
* i.e. the PPC970 AKA G5. */
|
||||
#if HAVE_DCBZL
|
||||
static void clear_blocks_dcbz128_ppc(int16_t *blocks)
|
||||
{
|
||||
#if HAVE_DCBZL
|
||||
register int misal = (unsigned long) blocks & 0x0000007f;
|
||||
register int i = 0;
|
||||
|
||||
@ -89,26 +89,23 @@ static void clear_blocks_dcbz128_ppc(int16_t *blocks)
|
||||
for (; i < sizeof(int16_t) * 6 * 64; i += 128)
|
||||
__asm__ volatile ("dcbzl %0,%1" :: "b" (blocks), "r" (i) : "memory");
|
||||
}
|
||||
}
|
||||
#else
|
||||
static void clear_blocks_dcbz128_ppc(int16_t *blocks)
|
||||
{
|
||||
memset(blocks, 0, sizeof(int16_t) * 6 * 64);
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
#if HAVE_DCBZL
|
||||
/* Check dcbz report how many bytes are set to 0 by dcbz. */
|
||||
/* update 24/06/2003: Replace dcbz by dcbzl to get the intended effect
|
||||
* (Apple "fixed" dcbz). Unfortunately this cannot be used unless the
|
||||
* assembler knows about dcbzl ... */
|
||||
static long check_dcbzl_effect(void)
|
||||
{
|
||||
long count = 0;
|
||||
#if HAVE_DCBZL
|
||||
register char *fakedata = av_malloc(1024);
|
||||
register char *fakedata_middle;
|
||||
register long zero = 0;
|
||||
register long i = 0;
|
||||
long count = 0;
|
||||
|
||||
if (!fakedata)
|
||||
return 0L;
|
||||
@ -126,15 +123,10 @@ static long check_dcbzl_effect(void)
|
||||
count++;
|
||||
|
||||
av_free(fakedata);
|
||||
#endif
|
||||
|
||||
return count;
|
||||
}
|
||||
#else
|
||||
static long check_dcbzl_effect(void)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
#endif
|
||||
|
||||
av_cold void ff_dsputil_init_ppc(DSPContext *c, AVCodecContext *avctx)
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user