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
..
aaccoder_mips.c
aacdec_mips.c
aacdec_mips.h
aacpsdsp_mips.c
aacpsy_mips.h
aacsbr_mips.c
aacsbr_mips.h
ac3dsp_mips.c lavc/mips: temporally disable ac3 downmix 2017-03-22 11:46:13 +01:00
acelp_filters_mips.c
acelp_vectors_mips.c
amrwbdec_mips.c
amrwbdec_mips.h
blockdsp_init_mips.c avcodec/mips: [loongson] enable MSA optimization for loongson platform. 2018-12-18 11:59:51 +01:00
blockdsp_mips.h Merge commit 'b2939a7527' 2017-03-21 15:19:17 +01:00
blockdsp_mmi.c Merge commit 'b2939a7527' 2017-03-21 15:19:17 +01:00
blockdsp_msa.c Merge commit 'b2939a7527' 2017-03-21 15:19:17 +01:00
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 avcodec/mips: version 1 of vc1dsp optimizations for loongson mmi 2016-12-17 18:41:18 +01:00
constants.h avcodec/mips: version 1 of vc1dsp optimizations for loongson mmi 2016-12-17 18:41:18 +01:00
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 avcodec/mips: [loongson] enable MSA optimization for loongson platform. 2018-12-18 11:59:51 +01:00
h264chroma_mips.h Merge commit 'e4a94d8b36' 2017-03-21 15:20:45 -03:00
h264chroma_mmi.c avcodec/mips: [loongson] refine optimization in h264_chroma. 2018-12-01 01:51:20 +01:00
h264chroma_msa.c avutil/mips: refactor msa load and store macros. 2019-07-19 01:23:23 +02:00
h264dsp_init_mips.c avcodec/mips: [loongson] enable MSA optimization for loongson platform. 2018-12-18 11:59:51 +01:00
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 avcodec/mips: [loongson] enable MSA optimization for loongson platform. 2018-12-18 11:59:51 +01:00
h264pred_mips.h
h264pred_mmi.c
h264pred_msa.c avcodec/mips: Removed generic function call in avc intra msa functions 2017-09-27 21:15:57 +02:00
h264qpel_init_mips.c avcodec/mips: [loongson] enable MSA optimization for loongson platform. 2018-12-18 11:59:51 +01:00
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 avcodec/mips: cleanup unused macros 2017-11-14 20:48:36 +01:00
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 build fix for mips 2017-04-06 10:10:09 -04:00
hevcpred_mips.h avcodec/mips: fix build 2017-03-31 12:28:58 +02:00
hevcpred_msa.c avutil/mips: refactor msa load and store macros. 2019-07-19 01:23:23 +02:00
hpeldsp_init_mips.c avcodec/mips: [loongson] enable MSA optimization for loongson platform. 2018-12-18 11:59:51 +01:00
hpeldsp_mips.h
hpeldsp_mmi.c avcodec/mips: [loongson] fix bug of svq3-watermark failed in fate test. 2018-09-14 01:52:29 +02:00
hpeldsp_msa.c avutil/mips: refactor msa load and store macros. 2019-07-19 01:23:23 +02:00
idctdsp_init_mips.c avcodec/mips: [loongson] enable MSA optimization for loongson platform. 2018-12-18 11:59:51 +01:00
idctdsp_mips.h avcodec/mips: [loongson] reoptimize simple idct with mmi. 2018-09-02 03:37:32 +02:00
idctdsp_mmi.c avcodec/mips: [loongson] reoptimize put and add pixels clamped functions. 2018-09-05 21:45:52 +02:00
idctdsp_msa.c
iirfilter_mips.c lavc/mips/iirfilter_mips: Include config.h. 2017-05-01 23:46:28 +02:00
lsp_mips.h
Makefile avcodec/mips: [loongson] mmi optimizations for VP9 put and avg functions 2019-02-27 01:51:40 +01:00
mathops.h
me_cmp_init_mips.c
me_cmp_mips.h
me_cmp_msa.c
mpegaudiodsp_mips_fixed.c Merge commit '2caa93b813' 2017-03-21 16:04:22 -03:00
mpegaudiodsp_mips_float.c Merge commit '2caa93b813' 2017-03-21 16:04:22 -03:00
mpegvideo_init_mips.c avcodec/mips: [loongson] enable MSA optimization for loongson platform. 2018-12-18 11:59:51 +01:00
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 avcodec/mips: [loongson] enable MSA optimization for loongson platform. 2018-12-18 11:59:51 +01:00
pixblockdsp_mips.h Merge commit 'de452e5037' 2017-03-20 15:58:32 +01:00
pixblockdsp_mmi.c Merge commit 'de452e5037' 2017-03-20 15:58:32 +01:00
pixblockdsp_msa.c Merge commit 'de452e5037' 2017-03-20 15:58:32 +01:00
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 avcodec/mips: [loongson] reoptimize simple idct with mmi. 2018-09-02 03:37:32 +02:00
simple_idct_msa.c Merge commit '2ec9fa5ec6' 2017-03-21 14:29:52 -03:00
vc1dsp_init_mips.c avcodec/mips: version 1 of vc1dsp optimizations for loongson mmi 2016-12-17 18:41:18 +01:00
vc1dsp_mips.h avcodec/mips: fix conflicting types error of ff_vc1_h_s_overlap_mmi. 2018-07-14 18:02:26 +02:00
vc1dsp_mmi.c avcodec/mips: [loongson] refine ff_vc1_inv_trans_8x8_mmi. 2018-09-19 00:44:44 +02:00
videodsp_init.c avcodec: Add prefetch for mips 2017-07-14 02:30:37 +02:00
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 avcodec/mips: [loongson] enable MSA optimization for loongson platform. 2018-12-18 11:59:51 +01:00
vp8dsp_mips.h
vp8dsp_mmi.c avutil/mips: [loongson] simplify macro TRANSPOSE_4H and TRANSPOSE_8B 2018-09-09 12:01:07 +02:00
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