diff --git a/libavcodec/arm/blockdsp_arm.h b/libavcodec/arm/blockdsp_arm.h index 6d9c2c3ed28b2a2ef9e63f25e5bfa3c84abfec38..d26630e102071a913687df0ba3e7ac0cba625ffe 100644 --- a/libavcodec/arm/blockdsp_arm.h +++ b/libavcodec/arm/blockdsp_arm.h @@ -21,6 +21,6 @@ #include "libavcodec/blockdsp.h" -void ff_blockdsp_init_neon(BlockDSPContext *c, unsigned high_bit_depth); +void ff_blockdsp_init_neon(BlockDSPContext *c); #endif /* AVCODEC_ARM_BLOCKDSP_ARM_H */ diff --git a/libavcodec/arm/blockdsp_init_arm.c b/libavcodec/arm/blockdsp_init_arm.c index a0c03674d78576ecdf833428e2403fd697a4a97b..a5db20170520e524e48a91b92eb2abc0b2343182 100644 --- a/libavcodec/arm/blockdsp_init_arm.c +++ b/libavcodec/arm/blockdsp_init_arm.c @@ -24,10 +24,10 @@ #include "libavcodec/blockdsp.h" #include "blockdsp_arm.h" -av_cold void ff_blockdsp_init_arm(BlockDSPContext *c, unsigned high_bit_depth) +av_cold void ff_blockdsp_init_arm(BlockDSPContext *c) { int cpu_flags = av_get_cpu_flags(); if (have_neon(cpu_flags)) - ff_blockdsp_init_neon(c, high_bit_depth); + ff_blockdsp_init_neon(c); } diff --git a/libavcodec/arm/blockdsp_init_neon.c b/libavcodec/arm/blockdsp_init_neon.c index 5081cf0cdffd1a11f921d77522c2b5f018aac385..e2857508f2937ff984265a86500111f73e3c1e70 100644 --- a/libavcodec/arm/blockdsp_init_neon.c +++ b/libavcodec/arm/blockdsp_init_neon.c @@ -28,10 +28,8 @@ void ff_clear_block_neon(int16_t *block); void ff_clear_blocks_neon(int16_t *blocks); -av_cold void ff_blockdsp_init_neon(BlockDSPContext *c, unsigned high_bit_depth) +av_cold void ff_blockdsp_init_neon(BlockDSPContext *c) { - if (!high_bit_depth) { - c->clear_block = ff_clear_block_neon; - c->clear_blocks = ff_clear_blocks_neon; - } + c->clear_block = ff_clear_block_neon; + c->clear_blocks = ff_clear_blocks_neon; } diff --git a/libavcodec/blockdsp.c b/libavcodec/blockdsp.c index e3d2ca1fdc31001450fdbcd4431d21c7651f9941..a35df8c7b10eb176d5c064051d84230e7b5629fd 100644 --- a/libavcodec/blockdsp.c +++ b/libavcodec/blockdsp.c @@ -57,8 +57,6 @@ static void fill_block8_c(uint8_t *block, uint8_t value, int line_size, int h) av_cold void ff_blockdsp_init(BlockDSPContext *c, AVCodecContext *avctx) { - const unsigned high_bit_depth = avctx->bits_per_raw_sample > 8; - c->clear_block = clear_block_8_c; c->clear_blocks = clear_blocks_8_c; @@ -66,13 +64,13 @@ av_cold void ff_blockdsp_init(BlockDSPContext *c, AVCodecContext *avctx) c->fill_block_tab[1] = fill_block8_c; if (ARCH_ARM) - ff_blockdsp_init_arm(c, high_bit_depth); + ff_blockdsp_init_arm(c); if (ARCH_PPC) - ff_blockdsp_init_ppc(c, high_bit_depth); + ff_blockdsp_init_ppc(c); if (ARCH_X86) #if FF_API_XVMC - ff_blockdsp_init_x86(c, high_bit_depth, avctx); + ff_blockdsp_init_x86(c, avctx); #else - ff_blockdsp_init_x86(c, high_bit_depth); + ff_blockdsp_init_x86(c); #endif /* FF_API_XVMC */ } diff --git a/libavcodec/blockdsp.h b/libavcodec/blockdsp.h index 32c671cf5a12eb73b7d26a775697d5d4e8891a7f..5b5639f5a68ae56ed4bcde7c134376db5b383159 100644 --- a/libavcodec/blockdsp.h +++ b/libavcodec/blockdsp.h @@ -40,13 +40,13 @@ typedef struct BlockDSPContext { void ff_blockdsp_init(BlockDSPContext *c, AVCodecContext *avctx); -void ff_blockdsp_init_arm(BlockDSPContext *c, unsigned high_bit_depth); -void ff_blockdsp_init_ppc(BlockDSPContext *c, unsigned high_bit_depth); +void ff_blockdsp_init_arm(BlockDSPContext *c); +void ff_blockdsp_init_ppc(BlockDSPContext *c); #if FF_API_XVMC -void ff_blockdsp_init_x86(BlockDSPContext *c, unsigned high_bit_depth, +void ff_blockdsp_init_x86(BlockDSPContext *c, AVCodecContext *avctx); #else -void ff_blockdsp_init_x86(BlockDSPContext *c, unsigned high_bit_depth); +void ff_blockdsp_init_x86(BlockDSPContext *c); #endif /* FF_API_XVMC */ #endif /* AVCODEC_BLOCKDSP_H */ diff --git a/libavcodec/ppc/blockdsp.c b/libavcodec/ppc/blockdsp.c index 679bc0454fee0ebaac4c996066ac183464af50fb..d2c1d0e766b244ac97ac20b299f5b1c3050f6420 100644 --- a/libavcodec/ppc/blockdsp.c +++ b/libavcodec/ppc/blockdsp.c @@ -143,27 +143,24 @@ static void clear_block_altivec(int16_t *block) } #endif /* HAVE_ALTIVEC */ -av_cold void ff_blockdsp_init_ppc(BlockDSPContext *c, unsigned high_bit_depth) +av_cold void ff_blockdsp_init_ppc(BlockDSPContext *c) { // common optimizations whether AltiVec is available or not - if (!high_bit_depth) { - switch (check_dcbzl_effect()) { - case 32: - c->clear_blocks = clear_blocks_dcbz32_ppc; - break; - case 128: - c->clear_blocks = clear_blocks_dcbz128_ppc; - break; - default: - break; - } + switch (check_dcbzl_effect()) { + case 32: + c->clear_blocks = clear_blocks_dcbz32_ppc; + break; + case 128: + c->clear_blocks = clear_blocks_dcbz128_ppc; + break; + default: + break; } #if HAVE_ALTIVEC if (!PPC_ALTIVEC(av_get_cpu_flags())) return; - if (!high_bit_depth) - c->clear_block = clear_block_altivec; + c->clear_block = clear_block_altivec; #endif /* HAVE_ALTIVEC */ } diff --git a/libavcodec/x86/blockdsp.c b/libavcodec/x86/blockdsp.c index f14bb1f9ad0ecc76f44c1feb754423a3bb1d8c95..9bb5185b890d6256c2dc2b43b7edc3b60e44f864 100644 --- a/libavcodec/x86/blockdsp.c +++ b/libavcodec/x86/blockdsp.c @@ -88,20 +88,19 @@ static void clear_blocks_sse(int16_t *blocks) #endif /* HAVE_INLINE_ASM */ #if FF_API_XVMC -av_cold void ff_blockdsp_init_x86(BlockDSPContext *c, unsigned high_bit_depth, +av_cold void ff_blockdsp_init_x86(BlockDSPContext *c, AVCodecContext *avctx) #else -av_cold void ff_blockdsp_init_x86(BlockDSPContext *c, unsigned high_bit_depth) +av_cold void ff_blockdsp_init_x86(BlockDSPContext *c) #endif /* FF_API_XVMC */ { #if HAVE_INLINE_ASM int cpu_flags = av_get_cpu_flags(); - if (!high_bit_depth) { - if (INLINE_MMX(cpu_flags)) { - c->clear_block = clear_block_mmx; - c->clear_blocks = clear_blocks_mmx; - } + if (INLINE_MMX(cpu_flags)) { + c->clear_block = clear_block_mmx; + c->clear_blocks = clear_blocks_mmx; + } #if FF_API_XVMC FF_DISABLE_DEPRECATION_WARNINGS @@ -111,10 +110,9 @@ FF_DISABLE_DEPRECATION_WARNINGS FF_ENABLE_DEPRECATION_WARNINGS #endif /* FF_API_XVMC */ - if (INLINE_SSE(cpu_flags)) { - c->clear_block = clear_block_sse; - c->clear_blocks = clear_blocks_sse; - } + if (INLINE_SSE(cpu_flags)) { + c->clear_block = clear_block_sse; + c->clear_blocks = clear_blocks_sse; } #endif /* HAVE_INLINE_ASM */ }