aboutsummaryrefslogtreecommitdiff
path: root/source/row_neon.cc
diff options
context:
space:
mode:
authorFrank Barchard <fbarchard@google.com>2022-12-15 14:11:52 -0800
committerlibyuv LUCI CQ <libyuv-scoped@luci-project-accounts.iam.gserviceaccount.com>2022-12-15 22:34:22 +0000
commit3abd6f36b6e4f5a2e0ce236580a8bc1da3c7cf7e (patch)
tree3fc173f8288f4457858919c806bac14593dc3d1b /source/row_neon.cc
parent610e0cdead3fcd3288693d18eab8c7323805ad9e (diff)
downloadlibyuv-3abd6f36b6e4f5a2e0ce236580a8bc1da3c7cf7e.tar.gz
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 <fbarchard@chromium.org> Reviewed-by: Wan-Teh Chang <wtc@google.com> Reviewed-by: Justin Green <greenjustin@google.com> Reviewed-by: Frank Barchard <fbarchard@chromium.org> Reviewed-by: Ernest Hua <ernesthua@google.com>
Diffstat (limited to 'source/row_neon.cc')
-rw-r--r--source/row_neon.cc6
1 files changed, 3 insertions, 3 deletions
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