diff --git a/README.chromium b/README.chromium index 0d7b6f2b0..417e71362 100644 --- a/README.chromium +++ b/README.chromium @@ -1,6 +1,6 @@ Name: libyuv URL: http://code.google.com/p/libyuv/ -Version: 786 +Version: 787 License: BSD License File: LICENSE diff --git a/include/libyuv/row.h b/include/libyuv/row.h index 3e59d159f..bd865f9bd 100644 --- a/include/libyuv/row.h +++ b/include/libyuv/row.h @@ -47,6 +47,7 @@ extern "C" { #define HAS_ARGBGRAYROW_SSSE3 #define HAS_ARGBMIRRORROW_SSSE3 #define HAS_ARGBMULTIPLYROW_SSE2 +#define HAS_ARGBPOLYNOMIALROW_SSE2 #define HAS_ARGBQUANTIZEROW_SSE2 #define HAS_ARGBSEPIAROW_SSSE3 #define HAS_ARGBSHADEROW_SSE2 @@ -98,7 +99,6 @@ extern "C" { // Conversions: #define HAS_ARGB1555TOARGBROW_SSE2 #define HAS_ARGB4444TOARGBROW_SSE2 -#define HAS_ARGBPOLYNOMIALROW_SSE2 #define HAS_ARGBTOARGB1555ROW_SSE2 #define HAS_ARGBTOARGB4444ROW_SSE2 #define HAS_ARGBTORAWROW_SSSE3 @@ -144,7 +144,7 @@ extern "C" { // Effects: #define HAS_ARGBCOLORTABLEROW_X86 #define HAS_RGBCOLORTABLEROW_X86 -#define HAS_ARGBLUMACOLORTABLEROW_SSE2 +//#define HAS_ARGBLUMACOLORTABLEROW_SSSE3 // Caveat: Visual C 2012 required for AVX2. #if _MSC_VER >= 1700 diff --git a/include/libyuv/version.h b/include/libyuv/version.h index 4e37888d4..59ae410ca 100644 --- a/include/libyuv/version.h +++ b/include/libyuv/version.h @@ -11,6 +11,6 @@ #ifndef INCLUDE_LIBYUV_VERSION_H_ // NOLINT #define INCLUDE_LIBYUV_VERSION_H_ -#define LIBYUV_VERSION 786 +#define LIBYUV_VERSION 787 #endif // INCLUDE_LIBYUV_VERSION_H_ NOLINT diff --git a/source/row_posix.cc b/source/row_posix.cc index b413ab5b5..11d41bb01 100644 --- a/source/row_posix.cc +++ b/source/row_posix.cc @@ -5827,8 +5827,8 @@ void ARGBPolynomialRow_SSE2(const uint8* src_argb, // 2 pixel loop. ".p2align 4 \n" "1: \n" - "movq (%0),%%xmm0 \n" - "lea 0x8(%0),%0 \n" + "movq "MEMACCESS(0)",%%xmm0 \n" + "lea "MEMLEA(0x8,0)",%0 \n" "punpcklbw %%xmm3,%%xmm0 \n" "movdqa %%xmm0,%%xmm4 \n" "punpcklwd %%xmm3,%%xmm0 \n" @@ -5837,20 +5837,20 @@ void ARGBPolynomialRow_SSE2(const uint8* src_argb, "cvtdq2ps %%xmm4,%%xmm4 \n" "movdqa %%xmm0,%%xmm1 \n" "movdqa %%xmm4,%%xmm5 \n" - "mulps 0x10(%3),%%xmm0 \n" - "mulps 0x10(%3),%%xmm4 \n" - "addps (%3),%%xmm0 \n" - "addps (%3),%%xmm4 \n" + "mulps "MEMACCESS2(0x10,3)",%%xmm0 \n" + "mulps "MEMACCESS2(0x10,3)",%%xmm4 \n" + "addps "MEMACCESS(3)",%%xmm0 \n" + "addps "MEMACCESS(3)",%%xmm4 \n" "movdqa %%xmm1,%%xmm2 \n" "movdqa %%xmm5,%%xmm6 \n" "mulps %%xmm1,%%xmm2 \n" "mulps %%xmm5,%%xmm6 \n" "mulps %%xmm2,%%xmm1 \n" "mulps %%xmm6,%%xmm5 \n" - "mulps 0x20(%3),%%xmm2 \n" - "mulps 0x20(%3),%%xmm6 \n" - "mulps 0x30(%3),%%xmm1 \n" - "mulps 0x30(%3),%%xmm5 \n" + "mulps "MEMACCESS2(0x20,3)",%%xmm2 \n" + "mulps "MEMACCESS2(0x20,3)",%%xmm6 \n" + "mulps "MEMACCESS2(0x30,3)",%%xmm1 \n" + "mulps "MEMACCESS2(0x30,3)",%%xmm5 \n" "addps %%xmm2,%%xmm0 \n" "addps %%xmm6,%%xmm4 \n" "addps %%xmm1,%%xmm0 \n" @@ -5860,8 +5860,8 @@ void ARGBPolynomialRow_SSE2(const uint8* src_argb, "packuswb %%xmm4,%%xmm0 \n" "packuswb %%xmm0,%%xmm0 \n" "sub $0x2,%2 \n" - "movq %%xmm0,(%1) \n" - "lea 0x8(%1),%1 \n" + "movq %%xmm0,"MEMACCESS(1)" \n" + "lea "MEMLEA(0x8,1)",%1 \n" "jg 1b \n" : "+r"(src_argb), // %0 "+r"(dst_argb), // %1