diff options
author | Frank Barchard <fbarchard@google.com> | 2022-06-21 16:07:01 -0700 |
---|---|---|
committer | libyuv LUCI CQ <libyuv-scoped@luci-project-accounts.iam.gserviceaccount.com> | 2022-06-22 00:11:49 +0000 |
commit | fe4a50df8e2a787e2919a8321dbe1412b94b20c6 (patch) | |
tree | 90eff546e86eb1c5023f38e783ed1cb7b4d41d68 /source/row_neon.cc | |
parent | e906ba9fe9df1cdc32307dbb1dcb1223d41bfd56 (diff) | |
download | libyuv-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.cc | 15 |
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"); } |