Index: include/libyuv/row.h |
diff --git a/include/libyuv/row.h b/include/libyuv/row.h |
index ef3efa5f36d6e012e92ebc7bc5b3976b4165f38a..96861befb071f5a257b0acc47c4b00b2fe1c3bd2 100644 |
--- a/include/libyuv/row.h |
+++ b/include/libyuv/row.h |
@@ -201,7 +201,7 @@ extern "C" { |
#define HAS_COPYROW_AVX |
#define HAS_H422TOARGBROW_AVX2 |
#define HAS_HALFFLOATROW_AVX2 |
-// #define HAS_HALFFLOATROW_F16C // Enable to test halffloat cast |
+// #define HAS_HALFFLOATROW_F16C // Enable to test halffloat cast |
#define HAS_I400TOARGBROW_AVX2 |
#define HAS_I422TOARGB1555ROW_AVX2 |
#define HAS_I422TOARGB4444ROW_AVX2 |
@@ -330,6 +330,11 @@ extern "C" { |
#define HAS_YUY2TOUVROW_NEON |
#define HAS_YUY2TOYROW_NEON |
+// TODO(fbarchard): Port to 32 bit. |
+#if defined(__aarch64__) |
+#define HAS_HALFFLOATROW_NEON |
+#endif |
+ |
// Effects: |
#define HAS_ARGBADDROW_NEON |
#define HAS_ARGBATTENUATEROW_NEON |
@@ -1954,6 +1959,9 @@ void HalfFloatRow_Any_AVX2(const uint16* src, uint16* dst, float scale, |
void HalfFloatRow_F16C(const uint16* src, uint16* dst, float scale, int width); |
void HalfFloatRow_Any_F16C(const uint16* src, uint16* dst, float scale, |
int width); |
+void HalfFloatRow_NEON(const uint16* src, uint16* dst, float scale, int width); |
+void HalfFloatRow_Any_NEON(const uint16* src, uint16* dst, float scale, |
+ int width); |
void ARGBLumaColorTableRow_C(const uint8* src_argb, uint8* dst_argb, int width, |
const uint8* luma, uint32 lumacoeff); |