[x265] [PATCH] asm: cvt32to16_shr_sse2

Min Chen chenm003 at 163.com
Thu Oct 17 16:19:27 CEST 2013


# HG changeset patch
# User Min Chen <chenm003 at 163.com>
# Date 1382019300 -28800
# Node ID 89bb15d3d9be522b071a07968fc0bc4ca383cc6e
# Parent  6c3d24d5f3882c5ea570da94f4275428107460ed
asm: cvt32to16_shr_sse2

diff -r 6c3d24d5f388 -r 89bb15d3d9be source/common/CMakeLists.txt
--- a/source/common/CMakeLists.txt	Thu Oct 17 22:14:37 2013 +0800
+++ b/source/common/CMakeLists.txt	Thu Oct 17 22:15:00 2013 +0800
@@ -153,7 +153,7 @@
         add_definitions(-DHAVE_ALIGNED_STACK=0)
     endif()
 
-    set(ASMS pixel-a.asm const-a.asm cpu-a.asm sad-a.asm mc-a.asm mc-a2.asm ipfilter8.asm)
+    set(ASMS pixel-a.asm const-a.asm cpu-a.asm sad-a.asm mc-a.asm mc-a2.asm ipfilter8.asm pixel-util.asm)
     if (X64)
         add_definitions(-DARCH_X86_64=1)
     else()
diff -r 6c3d24d5f388 -r 89bb15d3d9be source/common/x86/asm-primitives.cpp
--- a/source/common/x86/asm-primitives.cpp	Thu Oct 17 22:14:37 2013 +0800
+++ b/source/common/x86/asm-primitives.cpp	Thu Oct 17 22:15:00 2013 +0800
@@ -312,6 +312,8 @@
         p.sa8d[BLOCK_8x8]   = x265_pixel_sa8d_8x8_sse2;
         p.sa8d[BLOCK_16x16] = x265_pixel_sa8d_16x16_sse2;
         SA8D_INTER_FROM_BLOCK(sse2);
+
+        p.cvt32to16_shr = x265_cvt32to16_shr_sse2;
     }
     if (cpuMask & X265_CPU_SSSE3)
     {
diff -r 6c3d24d5f388 -r 89bb15d3d9be source/common/x86/pixel.h
--- a/source/common/x86/pixel.h	Thu Oct 17 22:14:37 2013 +0800
+++ b/source/common/x86/pixel.h	Thu Oct 17 22:15:00 2013 +0800
@@ -201,6 +201,8 @@
 uint64_t x265_pixel_sa8d_satd_16x16_xop(pixel *pix1, intptr_t stride1, pixel *pix2, intptr_t stride2);
 uint64_t x265_pixel_sa8d_satd_16x16_avx2(pixel *pix1, intptr_t stride1, pixel *pix2, intptr_t stride2);
 
+void x265_cvt32to16_shr_sse2(short *dst, int *src, intptr_t, int, int);
+
 #define DECL_SSD(width, suffix) \
     int x265_pixel_ssd_ ## width ## x64_ ## suffix(pixel *, intptr_t, pixel *, intptr_t); \
     int x265_pixel_ssd_ ## width ## x48_ ## suffix(pixel *, intptr_t, pixel *, intptr_t); \



More information about the x265-devel mailing list