ffmpeg/libavcodec/mips
Shiyou Yin 62e6b634a8 avcodec/mips: [loongson] refine process of setting block as 0 in h264dsp_mmi.
In function ff_h264_add_pixels4_8_mmi, there is no need to reset '%[ftmp0]'
to 0, because it's value has never changed since the start of the asm block.
This patch remove the redundant 'xor' and set src to zero once it was loaded.

In function ff_h264_idct_add_8_mmi, 'block' is seted to zero twice.
This patch removed the first setting zero operation and move the second one
after the load operation of block.

In function ff_h264_idct8_add_8_mmi, 'block' is seted to zero twice too.
This patch just removed the second setting zero operation.

This patch mainly simplifies the implementation of functions above,
the effect on the performance of whole h264 decoding process is not obvious.
According to the perf data, proportion of ff_h264_idct_add_8_mmi decreased from
0.29% to 0.26% and ff_h264_idct8_add_8_mmi decreased from 0.62% to 0.59% when decoding
H264 format on loongson 3A3000(For reference only , not very stable.).

Reviewed-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2019-07-28 20:50:30 +02:00
..
Makefile avcodec/mips: [loongson] mmi optimizations for VP9 put and avg functions 2019-02-27 01:51:40 +01:00
aaccoder_mips.c
aacdec_mips.c
aacdec_mips.h
aacpsdsp_mips.c
aacpsy_mips.h
aacsbr_mips.c
aacsbr_mips.h
ac3dsp_mips.c
acelp_filters_mips.c
acelp_vectors_mips.c
amrwbdec_mips.c
amrwbdec_mips.h
blockdsp_init_mips.c
blockdsp_mips.h
blockdsp_mmi.c
blockdsp_msa.c
cabac.h avcodec/mips/cabac: replace addi with addiu 2019-07-10 12:54:57 +02:00
celp_filters_mips.c
celp_math_mips.c
compute_antialias_fixed.h
compute_antialias_float.h
constants.c
constants.h
fft_mips.c
fmtconvert_mips.c
h263dsp_init_mips.c
h263dsp_mips.h
h263dsp_msa.c avutil/mips: refactor msa load and store macros. 2019-07-19 01:23:23 +02:00
h264chroma_init_mips.c
h264chroma_mips.h
h264chroma_mmi.c
h264chroma_msa.c avutil/mips: refactor msa load and store macros. 2019-07-19 01:23:23 +02:00
h264dsp_init_mips.c
h264dsp_mips.h
h264dsp_mmi.c avcodec/mips: [loongson] refine process of setting block as 0 in h264dsp_mmi. 2019-07-28 20:50:30 +02:00
h264dsp_msa.c avutil/mips: refactor msa load and store macros. 2019-07-19 01:23:23 +02:00
h264idct_msa.c avutil/mips: refactor msa load and store macros. 2019-07-19 01:23:23 +02:00
h264pred_init_mips.c
h264pred_mips.h
h264pred_mmi.c
h264pred_msa.c
h264qpel_init_mips.c
h264qpel_mmi.c
h264qpel_msa.c avutil/mips: refactor msa load and store macros. 2019-07-19 01:23:23 +02:00
hevc_idct_msa.c avutil/mips: refactor msa load and store macros. 2019-07-19 01:23:23 +02:00
hevc_lpf_sao_msa.c avutil/mips: refactor msa load and store macros. 2019-07-19 01:23:23 +02:00
hevc_macros_msa.h
hevc_mc_bi_msa.c avutil/mips: refactor msa load and store macros. 2019-07-19 01:23:23 +02:00
hevc_mc_biw_msa.c avutil/mips: refactor msa load and store macros. 2019-07-19 01:23:23 +02:00
hevc_mc_uni_msa.c avutil/mips: refactor msa load and store macros. 2019-07-19 01:23:23 +02:00
hevc_mc_uniw_msa.c avutil/mips: refactor msa load and store macros. 2019-07-19 01:23:23 +02:00
hevcdsp_init_mips.c avcodec/mips: [loongson] optimize put_hevc_qpel_h_8 with mmi. 2019-02-02 20:17:37 +01:00
hevcdsp_mips.h avcodec/mips: [loongson] optimize put_hevc_qpel_h_8 with mmi. 2019-02-02 20:17:37 +01:00
hevcdsp_mmi.c avcodec/mips: [loongson] optimize put_hevc_qpel_h_8 with mmi. 2019-02-02 20:17:37 +01:00
hevcdsp_msa.c avutil/mips: refactor msa load and store macros. 2019-07-19 01:23:23 +02:00
hevcpred_init_mips.c
hevcpred_mips.h
hevcpred_msa.c avutil/mips: refactor msa load and store macros. 2019-07-19 01:23:23 +02:00
hpeldsp_init_mips.c
hpeldsp_mips.h
hpeldsp_mmi.c
hpeldsp_msa.c avutil/mips: refactor msa load and store macros. 2019-07-19 01:23:23 +02:00
idctdsp_init_mips.c
idctdsp_mips.h
idctdsp_mmi.c
idctdsp_msa.c
iirfilter_mips.c
lsp_mips.h
mathops.h
me_cmp_init_mips.c
me_cmp_mips.h
me_cmp_msa.c
mpegaudiodsp_mips_fixed.c
mpegaudiodsp_mips_float.c
mpegvideo_init_mips.c
mpegvideo_mips.h
mpegvideo_mmi.c avcodec/mips: [loongson] fix mpeg4 decoding error on loongson platform. 2019-05-26 21:04:18 +02:00
mpegvideo_msa.c
mpegvideoencdsp_init_mips.c
mpegvideoencdsp_msa.c
pixblockdsp_init_mips.c
pixblockdsp_mips.h
pixblockdsp_mmi.c
pixblockdsp_msa.c
qpeldsp_init_mips.c
qpeldsp_mips.h
qpeldsp_msa.c avutil/mips: refactor msa load and store macros. 2019-07-19 01:23:23 +02:00
sbrdsp_mips.c
simple_idct_mmi.c
simple_idct_msa.c
vc1dsp_init_mips.c
vc1dsp_mips.h
vc1dsp_mmi.c
videodsp_init.c
vp3dsp_idct_mmi.c avcodec/mips: [loongson] optimize theora decoding with mmi. 2019-02-16 19:56:57 +01:00
vp3dsp_idct_msa.c avutil/mips: refactor msa load and store macros. 2019-07-19 01:23:23 +02:00
vp3dsp_init_mips.c avcodec/mips: [loongson] optimize theora decoding with mmi. 2019-02-16 19:56:57 +01:00
vp3dsp_mips.h avcodec/mips: [loongson] optimize theora decoding with mmi. 2019-02-16 19:56:57 +01:00
vp8_idct_msa.c avutil/mips: refactor msa load and store macros. 2019-07-19 01:23:23 +02:00
vp8_lpf_msa.c avutil/mips: refactor msa load and store macros. 2019-07-19 01:23:23 +02:00
vp8_mc_msa.c avutil/mips: refactor msa load and store macros. 2019-07-19 01:23:23 +02:00
vp8dsp_init_mips.c
vp8dsp_mips.h
vp8dsp_mmi.c
vp9_idct_msa.c avutil/mips: refactor msa load and store macros. 2019-07-19 01:23:23 +02:00
vp9_intra_msa.c avutil/mips: refactor msa load and store macros. 2019-07-19 01:23:23 +02:00
vp9_lpf_msa.c avutil/mips: refactor msa load and store macros. 2019-07-19 01:23:23 +02:00
vp9_mc_mmi.c avcodec/mips: [loongson] mmi optimizations for VP9 put and avg functions 2019-02-27 01:51:40 +01:00
vp9_mc_msa.c avutil/mips: refactor msa load and store macros. 2019-07-19 01:23:23 +02:00
vp9dsp_init_mips.c avcodec/mips: [loongson] mmi optimizations for VP9 put and avg functions 2019-02-27 01:51:40 +01:00
vp9dsp_mips.h avcodec/mips: [loongson] mmi optimizations for VP9 put and avg functions 2019-02-27 01:51:40 +01:00
wmv2dsp_init_mips.c
wmv2dsp_mips.h
wmv2dsp_mmi.c
xvid_idct_mmi.c
xvididct_init_mips.c
xvididct_mips.h