[FFmpeg-devel] [PATCH 09/11] avcodec/blockdsp: roll-up x86asm preprocessor loop
James Darnley
jdarnley at obe.tv
Thu Nov 9 13:58:35 EET 2017
From: James Darnley <james.darnley at gmail.com>
---
libavcodec/x86/blockdsp.asm | 11 ++++-------
1 file changed, 4 insertions(+), 7 deletions(-)
diff --git a/libavcodec/x86/blockdsp.asm b/libavcodec/x86/blockdsp.asm
index 9d203df8f5..9d0e8a3242 100644
--- a/libavcodec/x86/blockdsp.asm
+++ b/libavcodec/x86/blockdsp.asm
@@ -38,22 +38,19 @@ cglobal clear_block, 1, 1, %1, blocks
%assign %%i 0
%rep %2
mova [blocksq+mmsize*(0+%%i)], m0
- mova [blocksq+mmsize*(1+%%i)], m0
- mova [blocksq+mmsize*(2+%%i)], m0
- mova [blocksq+mmsize*(3+%%i)], m0
-%assign %%i %%i+4
+%assign %%i %%i+1
%endrep
RET
%endmacro
INIT_MMX mmx
%define ZERO pxor
-CLEAR_BLOCK 0, 4
+CLEAR_BLOCK 0, 16
INIT_XMM sse
%define ZERO xorps
-CLEAR_BLOCK 1, 2
+CLEAR_BLOCK 1, 8
INIT_YMM avx
-CLEAR_BLOCK 1, 1
+CLEAR_BLOCK 1, 4
;-----------------------------------------
; void ff_clear_blocks(int16_t *blocks);
--
2.15.0
More information about the ffmpeg-devel
mailing list