diff options
author | Zhou Xiaoyong <zhouxiaoyong@loongson.cn> | 2016-05-17 19:12:54 +0800 |
---|---|---|
committer | Michael Niedermayer <michael@niedermayer.cc> | 2016-05-21 17:13:13 +0200 |
commit | c749be9eb3499e82a66617c306d04b8b30e60e0d (patch) | |
tree | 42e15057237b7bba1c54a13bb829093675b27ffc /libavcodec/mips/h264pred_init_mips.c | |
parent | 4a963ee698c03570659c6f46fd2407cbda639a2d (diff) | |
download | ffmpeg-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.c | 5 |
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) { |