| Index: source/planar_functions.cc
|
| diff --git a/source/planar_functions.cc b/source/planar_functions.cc
|
| index 0bd76bc7cf9a8490dbeb9c579857f7a565b8c1fb..da4c47b831bc8e3b0a79d557adc9dbc0b5491f7c 100644
|
| --- a/source/planar_functions.cc
|
| +++ b/source/planar_functions.cc
|
| @@ -2570,13 +2570,21 @@ int HalfFloatPlane(const uint16* src_y, int src_stride_y,
|
| }
|
| #endif
|
| #if defined(HAS_HALFFLOATROW_AVX2)
|
| - if (TestCpuFlag(kCpuHasAVX2) && TestCpuFlag(kCpuHasF16C)) {
|
| + if (TestCpuFlag(kCpuHasAVX2)) {
|
| HalfFloatRow = HalfFloatRow_Any_AVX2;
|
| if (IS_ALIGNED(width, 16)) {
|
| HalfFloatRow = HalfFloatRow_AVX2;
|
| }
|
| }
|
| #endif
|
| +#if defined(HAS_HALFFLOATROW_F16C)
|
| + if (TestCpuFlag(kCpuHasAVX2) && TestCpuFlag(kCpuHasF16C)) {
|
| + HalfFloatRow = HalfFloatRow_Any_F16C;
|
| + if (IS_ALIGNED(width, 16)) {
|
| + HalfFloatRow = HalfFloatRow_F16C;
|
| + }
|
| + }
|
| +#endif
|
| for (y = 0; y < height; ++y) {
|
| HalfFloatRow(src_y, dst_y, scale, width);
|
| src_y += src_stride_y;
|
|
|