[FFmpeg-devel] [PATCH] x86/imdct36: use extractps inside the STORE macro

James Almer jamrial at gmail.com
Mon Jan 25 19:41:19 CET 2016


Signed-off-by: James Almer <jamrial at gmail.com>
---
 libavcodec/x86/imdct36.asm | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/libavcodec/x86/imdct36.asm b/libavcodec/x86/imdct36.asm
index 7218f06..fcf007b 100644
--- a/libavcodec/x86/imdct36.asm
+++ b/libavcodec/x86/imdct36.asm
@@ -143,6 +143,12 @@ SECTION .text
 %endmacro
 
 %macro STORE 4
+%if cpuflag(sse4)
+    extractps [%3       ], %1, 0
+    extractps [%3 +   %4], %1, 1
+    extractps [%3 + 2*%4], %1, 2
+    extractps [%3 + 3*%4], %1, 3
+%else
     movhlps %2, %1
     movss   [%3       ], %1
     movss   [%3 + 2*%4], %2
@@ -150,6 +156,7 @@ SECTION .text
     movss   [%3 +   %4], %1
     movhlps %2, %1
     movss   [%3 + 3*%4], %2
+%endif
 %endmacro
 
 %macro LOAD 4
-- 
2.7.0



More information about the ffmpeg-devel mailing list