[FFmpeg-cvslog] Merge commit 'e4128c08d786eb5513578e8c6063671ba03226ab'
Clément Bœsch
git at videolan.org
Thu Mar 23 13:05:43 EET 2017
ffmpeg | branch: master | Clément Bœsch <u at pkh.me> | Thu Mar 23 12:03:25 2017 +0100| [733b13ad666c057c416a23bc694ae2e8391abd8b] | committer: Clément Bœsch
Merge commit 'e4128c08d786eb5513578e8c6063671ba03226ab'
* commit 'e4128c08d786eb5513578e8c6063671ba03226ab':
Revert "hevc: x86: Refactor IDCT macro declarations"
So apparently this was technically correct be reverted due to
authorship. Reverted as well in FFmpeg for now...
See http://lists.libav.org/pipermail/libav-devel/2016-October/079560.html
Merged-by: Clément Bœsch <u at pkh.me>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=733b13ad666c057c416a23bc694ae2e8391abd8b
---
libavcodec/x86/hevc_idct.asm | 51 +++++++++++++++++++++++++++++++++-----------
1 file changed, 39 insertions(+), 12 deletions(-)
diff --git a/libavcodec/x86/hevc_idct.asm b/libavcodec/x86/hevc_idct.asm
index 26649d0..33b437c 100644
--- a/libavcodec/x86/hevc_idct.asm
+++ b/libavcodec/x86/hevc_idct.asm
@@ -74,23 +74,50 @@ cglobal hevc_idct_%1x%1_dc_%2, 1, 2, 1, coeff, tmp
RET
%endmacro
-%macro INIT_IDCT_DC 1
+; 8-bit
INIT_MMX mmxext
-IDCT_DC_NL 4, %1
-IDCT_DC 8, 2, %1
+IDCT_DC_NL 4, 8
+IDCT_DC 8, 2, 8
INIT_XMM sse2
-IDCT_DC_NL 8, %1
-IDCT_DC 16, 4, %1
-IDCT_DC 32, 16, %1
+IDCT_DC_NL 8, 8
+IDCT_DC 16, 4, 8
+IDCT_DC 32, 16, 8
%if HAVE_AVX2_EXTERNAL
INIT_YMM avx2
-IDCT_DC 16, 2, %1
-IDCT_DC 32, 8, %1
+IDCT_DC 16, 2, 8
+IDCT_DC 32, 8, 8
%endif ;HAVE_AVX2_EXTERNAL
-%endmacro
-INIT_IDCT_DC 8
-INIT_IDCT_DC 10
-INIT_IDCT_DC 12
+; 10-bit
+INIT_MMX mmxext
+IDCT_DC_NL 4, 10
+IDCT_DC 8, 2, 10
+
+INIT_XMM sse2
+IDCT_DC_NL 8, 10
+IDCT_DC 16, 4, 10
+IDCT_DC 32, 16, 10
+
+%if HAVE_AVX2_EXTERNAL
+INIT_YMM avx2
+IDCT_DC 16, 2, 10
+IDCT_DC 32, 8, 10
+%endif ;HAVE_AVX2_EXTERNAL
+
+; 12-bit
+INIT_MMX mmxext
+IDCT_DC_NL 4, 12
+IDCT_DC 8, 2, 12
+
+INIT_XMM sse2
+IDCT_DC_NL 8, 12
+IDCT_DC 16, 4, 12
+IDCT_DC 32, 16, 12
+
+%if HAVE_AVX2_EXTERNAL
+INIT_YMM avx2
+IDCT_DC 16, 2, 12
+IDCT_DC 32, 8, 12
+%endif ;HAVE_AVX2_EXTERNAL
======================================================================
diff --cc libavcodec/x86/hevc_idct.asm
index 26649d0,d662aa9..33b437c
--- a/libavcodec/x86/hevc_idct.asm
+++ b/libavcodec/x86/hevc_idct.asm
@@@ -86,11 -86,22 +86,38 @@@ IDCT_DC 32, 16,
%if HAVE_AVX2_EXTERNAL
INIT_YMM avx2
- IDCT_DC 16, 2, %1
- IDCT_DC 32, 8, %1
+ IDCT_DC 16, 2, 8
+ IDCT_DC 32, 8, 8
%endif ;HAVE_AVX2_EXTERNAL
- %endmacro
- INIT_IDCT_DC 8
- INIT_IDCT_DC 10
- INIT_IDCT_DC 12
+ ; 10-bit
+ INIT_MMX mmxext
+ IDCT_DC_NL 4, 10
+ IDCT_DC 8, 2, 10
+
+ INIT_XMM sse2
+ IDCT_DC_NL 8, 10
+ IDCT_DC 16, 4, 10
+ IDCT_DC 32, 16, 10
+
+ %if HAVE_AVX2_EXTERNAL
+ INIT_YMM avx2
+ IDCT_DC 16, 2, 10
+ IDCT_DC 32, 8, 10
+ %endif ;HAVE_AVX2_EXTERNAL
++
++; 12-bit
++INIT_MMX mmxext
++IDCT_DC_NL 4, 12
++IDCT_DC 8, 2, 12
++
++INIT_XMM sse2
++IDCT_DC_NL 8, 12
++IDCT_DC 16, 4, 12
++IDCT_DC 32, 16, 12
++
++%if HAVE_AVX2_EXTERNAL
++INIT_YMM avx2
++IDCT_DC 16, 2, 12
++IDCT_DC 32, 8, 12
++%endif ;HAVE_AVX2_EXTERNAL
More information about the ffmpeg-cvslog
mailing list