[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