aboutsummaryrefslogtreecommitdiff
path: root/source/row_neon.cc
diff options
context:
space:
mode:
authorFrank Barchard <fbarchard@google.com>2022-06-21 16:07:01 -0700
committerlibyuv LUCI CQ <libyuv-scoped@luci-project-accounts.iam.gserviceaccount.com>2022-06-22 00:11:49 +0000
commitfe4a50df8e2a787e2919a8321dbe1412b94b20c6 (patch)
tree90eff546e86eb1c5023f38e783ed1cb7b4d41d68 /source/row_neon.cc
parente906ba9fe9df1cdc32307dbb1dcb1223d41bfd56 (diff)
downloadlibyuv-fe4a50df8e2a787e2919a8321dbe1412b94b20c6.tar.gz
Bilinear scale up msan fix
- Avoid stepping to height + 1 for bilinear filter 2nd row for last row of source - Box filter ubsan fix for 3/4 and 3/8 scaling for 16 bit planar - Height 1 asan fixes Bug: libyuv:935, b/206716399 Change-Id: I56088520f2a884a37b987ee5265def175047673e Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/3717263 Reviewed-by: Wan-Teh Chang <wtc@google.com> Commit-Queue: Frank Barchard <fbarchard@chromium.org>
Diffstat (limited to 'source/row_neon.cc')
-rw-r--r--source/row_neon.cc15
1 files changed, 8 insertions, 7 deletions
diff --git a/source/row_neon.cc b/source/row_neon.cc
index 653fd203..14eed6ff 100644
--- a/source/row_neon.cc
+++ b/source/row_neon.cc
@@ -19,7 +19,8 @@ extern "C" {
#if !defined(LIBYUV_DISABLE_NEON) && defined(__ARM_NEON__) && \
!defined(__aarch64__)
-// d8-d15, r4-r11,r14(lr) need to be preserved if used. r13(sp),r15(pc) are reserved.
+// d8-d15, r4-r11,r14(lr) need to be preserved if used. r13(sp),r15(pc) are
+// reserved.
// q0: Y uint16x8_t
// d2: U uint8x8_t
@@ -2766,12 +2767,12 @@ void InterpolateRow_16_NEON(uint16_t* dst_ptr,
"bgt 100b \n"
"99: \n"
- : "+r"(dst_ptr), // %0
- "+r"(src_ptr), // %1
- "+r"(src_ptr1), // %2
- "+r"(dst_width) // %3
- : "r"(y1_fraction), // %4
- "r"(y0_fraction) // %5
+ : "+r"(dst_ptr), // %0
+ "+r"(src_ptr), // %1
+ "+r"(src_ptr1), // %2
+ "+r"(dst_width) // %3
+ : "r"(y1_fraction), // %4
+ "r"(y0_fraction) // %5
: "cc", "memory", "q0", "q1", "q2", "q3", "q8");
}