aboutsummaryrefslogtreecommitdiffstats
path: root/libavcodec/mips
diff options
context:
space:
mode:
authorgxw <guxiwei-hf@loongson.cn>2020-09-03 14:29:51 +0800
committerMichael Niedermayer <michael@niedermayer.cc>2020-09-10 23:31:10 +0200
commita4f7b09536c1d4b643992c03fa7105d2229da28e (patch)
treea4609fd6a09356c4babf2d95a93c597a513efb04 /libavcodec/mips
parentd91756c1b5fa70095e55d34ded6d6085bfd56bd4 (diff)
downloadffmpeg-a4f7b09536c1d4b643992c03fa7105d2229da28e.tar.gz
avcodec/mips: [loongson] Fixed mmi optimization
Test case fate-checkasm-h264pred failed in latest community code. This patch fixed the bug. Signed-off-by: Shiyou Yin <yinshiyou-hf@loongson.cn> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Diffstat (limited to 'libavcodec/mips')
-rw-r--r--libavcodec/mips/h264pred_mmi.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/libavcodec/mips/h264pred_mmi.c b/libavcodec/mips/h264pred_mmi.c
index f4fe0911af..0209c2e43f 100644
--- a/libavcodec/mips/h264pred_mmi.c
+++ b/libavcodec/mips/h264pred_mmi.c
@@ -178,7 +178,9 @@ void ff_pred8x8l_top_dc_8_mmi(uint8_t *src, int has_topleft,
"1: \n\t"
"bnez %[has_topright], 2f \n\t"
- "pinsrh_3 %[ftmp2], %[ftmp2], %[ftmp4] \n\t"
+ "dli %[tmp0], 0xa4 \n\t"
+ "mtc1 %[tmp0], %[ftmp1] \n\t"
+ "pshufh %[ftmp2], %[ftmp2], %[ftmp1] \n\t"
"2: \n\t"
"dli %[tmp0], 0x02 \n\t"
@@ -370,7 +372,9 @@ void ff_pred8x8l_vertical_8_mmi(uint8_t *src, int has_topleft,
"1: \n\t"
"bnez %[has_topright], 2f \n\t"
- "pinsrh_3 %[ftmp11], %[ftmp11], %[ftmp9] \n\t"
+ "dli %[tmp0], 0xa4 \n\t"
+ "mtc1 %[tmp0], %[ftmp1] \n\t"
+ "pshufh %[ftmp11], %[ftmp11], %[ftmp1] \n\t"
"2: \n\t"
"dli %[tmp0], 0x02 \n\t"