From 3abd6f36b6e4f5a2e0ce236580a8bc1da3c7cf7e Mon Sep 17 00:00:00 2001 From: Frank Barchard Date: Thu, 15 Dec 2022 14:11:52 -0800 Subject: Casting for scale functions - MT2T support for source strides added, but only works for positive values. - Reduced casting in row_common - one cast per assignment. - scaling functions use intptr_t for intermediate calculations, then cast strides to ptrdiff_t Bug: libyuv:948, b/257266635, b/262468594 Change-Id: I0409a0ce916b777da2a01c0ab0b56dccefed3b33 Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/4102203 Commit-Queue: Frank Barchard Reviewed-by: Wan-Teh Chang Reviewed-by: Justin Green Reviewed-by: Frank Barchard Reviewed-by: Ernest Hua --- source/row_neon.cc | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'source/row_neon.cc') diff --git a/source/row_neon.cc b/source/row_neon.cc index 0c6065f8..0611b9aa 100644 --- a/source/row_neon.cc +++ b/source/row_neon.cc @@ -720,9 +720,9 @@ void DetileToYUY2_NEON(const uint8_t* src_y, } #endif -void UnpackMT2T_NEON(const uint16_t* src, uint16_t* dst, size_t size) { - const uint16_t* src_lower_bits = src; - const uint16_t* src_upper_bits = src + 8; +void UnpackMT2T_NEON(const uint8_t* src, uint16_t* dst, size_t size) { + const uint8_t* src_lower_bits = src; + const uint8_t* src_upper_bits = src + 16; asm volatile( "1: \n" "vld4.8 {d1, d3, d5, d7}, [%1]! \n" // Load 32 bytes of upper -- cgit v1.2.3