[FFmpeg-devel] [PATCH] avcodec/mips: [loongson] fix mpeg4 decoding error on loongson platform.

Shiyou Yin yinshiyou-hf at loongson.cn
Fri May 24 05:26:43 EEST 2019


In function ff_dct_unquantize_mpeg2_intra_mmi,
addr0 shoudn't be changed before storage operation.
---
 libavcodec/mips/mpegvideo_mmi.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libavcodec/mips/mpegvideo_mmi.c b/libavcodec/mips/mpegvideo_mmi.c
index 18058e4..e4aba08 100644
--- a/libavcodec/mips/mpegvideo_mmi.c
+++ b/libavcodec/mips/mpegvideo_mmi.c
@@ -410,9 +410,9 @@ void ff_dct_unquantize_mpeg2_intra_mmi(MpegEncContext *s, int16_t *block,
         "psubh      %[ftmp2],   %[ftmp2],       %[ftmp8]                \n\t"
         "pandn      %[ftmp5],   %[ftmp5],       %[ftmp1]                \n\t"
         "pandn      %[ftmp6],   %[ftmp6],       %[ftmp2]                \n\t"
-        PTR_ADDIU  "%[addr0],   %[addr0],       0x10                    \n\t"
         MMI_SDXC1(%[ftmp5], %[addr0], %[block], 0x00)
         MMI_SDXC1(%[ftmp6], %[addr0], %[block], 0x08)
+        PTR_ADDIU  "%[addr0],   %[addr0],       0x10                    \n\t"
         "blez       %[addr0],   1b                                      \n\t"
         : [ftmp0]"=&f"(ftmp[0]),            [ftmp1]"=&f"(ftmp[1]),
           [ftmp2]"=&f"(ftmp[2]),            [ftmp3]"=&f"(ftmp[3]),
-- 
2.1.0




More information about the ffmpeg-devel mailing list