aboutsummaryrefslogtreecommitdiffstats
path: root/libavcodec/mips/h264pred_init_mips.c
diff options
context:
space:
mode:
authorZhou Xiaoyong <zhouxiaoyong@loongson.cn>2016-05-17 19:12:54 +0800
committerMichael Niedermayer <michael@niedermayer.cc>2016-05-21 17:13:13 +0200
commitc749be9eb3499e82a66617c306d04b8b30e60e0d (patch)
tree42e15057237b7bba1c54a13bb829093675b27ffc /libavcodec/mips/h264pred_init_mips.c
parent4a963ee698c03570659c6f46fd2407cbda639a2d (diff)
downloadffmpeg-c749be9eb3499e82a66617c306d04b8b30e60e0d.tar.gz
avcodec/mips: loongson optimize h264pred with mmi v3
1. no longer use the register names directly and optimized code format 2. to be compatible with O32, specify type of address variable with mips_reg and handle the address variable with PTR_ operator 3. ff_pred16x16_plane_ functions only support N64 ABI now Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Diffstat (limited to 'libavcodec/mips/h264pred_init_mips.c')
-rw-r--r--libavcodec/mips/h264pred_init_mips.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/libavcodec/mips/h264pred_init_mips.c b/libavcodec/mips/h264pred_init_mips.c
index 93a2409a0f..c33d8f7cdb 100644
--- a/libavcodec/mips/h264pred_init_mips.c
+++ b/libavcodec/mips/h264pred_init_mips.c
@@ -115,23 +115,22 @@ static av_cold void h264_pred_init_mmi(H264PredContext *h, int codec_id,
h->pred8x8l [TOP_DC_PRED ] = ff_pred8x8l_top_dc_8_mmi;
h->pred8x8l [DC_PRED ] = ff_pred8x8l_dc_8_mmi;
+#if ARCH_MIPS64
switch (codec_id) {
case AV_CODEC_ID_SVQ3:
h->pred16x16[PLANE_PRED8x8 ] = ff_pred16x16_plane_svq3_8_mmi;
- ;
break;
case AV_CODEC_ID_RV40:
h->pred16x16[PLANE_PRED8x8 ] = ff_pred16x16_plane_rv40_8_mmi;
- ;
break;
case AV_CODEC_ID_VP7:
case AV_CODEC_ID_VP8:
- ;
break;
default:
h->pred16x16[PLANE_PRED8x8 ] = ff_pred16x16_plane_h264_8_mmi;
break;
}
+#endif
if (codec_id == AV_CODEC_ID_SVQ3 || codec_id == AV_CODEC_ID_H264) {
if (chroma_format_idc == 1) {