Chromium Code Reviews| Index: source/planar_functions.cc |
| diff --git a/source/planar_functions.cc b/source/planar_functions.cc |
| index 459df6fe0792de0ad4b1513e2c376dc5e4fb5dd2..e2bc1a5db82d2f0646d251b25e96ab0e7542a339 100644 |
| --- a/source/planar_functions.cc |
| +++ b/source/planar_functions.cc |
| @@ -610,8 +610,7 @@ int BlendPlane(const uint8* src_y0, int src_stride_y0, |
| #if defined(HAS_BLENDPLANEROW_SSSE3) |
| if (TestCpuFlag(kCpuHasSSSE3)) { |
| -// TODO(fbarchard): Implement any versions for odd width. |
| -// BlendPlaneRow = BlendPlaneRow_Any_SSSE3; |
| + BlendPlaneRow = BlendPlaneRow_Any_SSSE3; |
| if (IS_ALIGNED(width, 8)) { |
| BlendPlaneRow = BlendPlaneRow_SSSE3; |
| } |
| @@ -619,8 +618,8 @@ int BlendPlane(const uint8* src_y0, int src_stride_y0, |
| #endif |
| #if defined(HAS_BLENDPLANEROW_AVX2) |
| if (TestCpuFlag(kCpuHasAVX2)) { |
| -// BlendPlaneRow = BlendPlaneRow_Any_AVX2; |
| - if (IS_ALIGNED(width, 16)) { |
| + BlendPlaneRow = BlendPlaneRow_Any_AVX2; |
| + if (IS_ALIGNED(width, 32)) { |
| BlendPlaneRow = BlendPlaneRow_AVX2; |
| } |
| } |
| @@ -678,17 +677,16 @@ int I420Blend(const uint8* src_y0, int src_stride_y0, |
| #if defined(HAS_BLENDPLANEROW_SSSE3) |
| if (TestCpuFlag(kCpuHasSSSE3)) { |
| -// TODO(fbarchard): Implement any versions for odd width. |
| -// BlendPlaneRow = BlendPlaneRow_Any_SSSE3; |
| - if (IS_ALIGNED(halfwidth, 8)) { |
| + BlendPlaneRow = BlendPlaneRow_Any_SSSE3; |
| + if (IS_ALIGNED(width, 8)) { |
| BlendPlaneRow = BlendPlaneRow_SSSE3; |
| } |
| } |
| #endif |
| #if defined(HAS_BLENDPLANEROW_AVX2) |
| if (TestCpuFlag(kCpuHasAVX2)) { |
| -// BlendPlaneRow = BlendPlaneRow_Any_AVX2; |
| - if (IS_ALIGNED(halfwidth, 16)) { |
| + BlendPlaneRow = BlendPlaneRow_Any_AVX2; |
| + if (IS_ALIGNED(width, 32)) { |
|
Diony Rosa
2015/12/08 20:06:53
You're also using BlendPlaneRow on the chroma chan
fbarchard
2015/12/08 20:09:47
Done.
|
| BlendPlaneRow = BlendPlaneRow_AVX2; |
| } |
| } |