diff options
author | Frank Barchard <fbarchard@google.com> | 2021-01-28 11:30:38 -0800 |
---|---|---|
committer | Frank Barchard <fbarchard@chromium.org> | 2021-01-28 19:34:29 +0000 |
commit | 39240f7149cffde62e3620344d222c8ab2c21178 (patch) | |
tree | 0b97836232fba45ae52d7d9c2cdd72b57cd7811a /source/row_neon.cc | |
parent | 982d5fa9be2265972b946ac69be69bbf67da3b01 (diff) | |
download | libyuv-39240f7149cffde62e3620344d222c8ab2c21178.tar.gz |
Fix in row_gcc.cc to change subq to sub
subq is only available for x64
sub works for both 32 bit x86 and 64 bit x64
Fox in row_gcc.cc for 32 bit x86 running out of registers.
Fix in row_neon.cc for split function argb paramter name.
Bug: libyuv:877, b/178283356, b/178713286
Change-Id: If2b12a2d6168eab08005a2cdf2c17a470a924dd1
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/2656771
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 | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/source/row_neon.cc b/source/row_neon.cc index 3e960a58..e54cb12b 100644 --- a/source/row_neon.cc +++ b/source/row_neon.cc @@ -683,7 +683,7 @@ void SplitARGBRow_NEON(const uint8_t* src_argb, "vst1.8 {q2}, [%1]! \n" // store R "vst1.8 {q3}, [%4]! \n" // store A "bgt 1b \n" - : "+r"(src_rgba), // %0 + : "+r"(src_argb), // %0 "+r"(dst_r), // %1 "+r"(dst_g), // %2 "+r"(dst_b), // %3 @@ -708,8 +708,8 @@ void MergeARGBRow_NEON(const uint8_t* src_r, "vld1.8 {q0}, [%2]! \n" // load B "vld1.8 {q3}, [%3]! \n" // load A "subs %5, %5, #16 \n" // 16 processed per loop - "vst4.8 {d0, d2, d4, d6}, [%4]! \n" // store 8 ARGB - "vst4.8 {d1, d3, d5, d7}, [%4]! \n" // next 8 ARGB + "vst4.8 {d0, d2, d4, d6}, [%4]! \n" // store 8 ARGB + "vst4.8 {d1, d3, d5, d7}, [%4]! \n" // next 8 ARGB "bgt 1b \n" : "+r"(src_r), // %0 "+r"(src_g), // %1 @@ -737,7 +737,7 @@ void SplitXRGBRow_NEON(const uint8_t* src_argb, "vst1.8 {q1}, [%2]! \n" // store G "vst1.8 {q2}, [%1]! \n" // store R "bgt 1b \n" - : "+r"(src_rgba), // %0 + : "+r"(src_argb), // %0 "+r"(dst_r), // %1 "+r"(dst_g), // %2 "+r"(dst_b), // %3 @@ -760,8 +760,8 @@ void MergeXRGBRow_NEON(const uint8_t* src_r, "vld1.8 {q1}, [%1]! \n" // load G "vld1.8 {q0}, [%2]! \n" // load B "subs %4, %4, #16 \n" // 16 processed per loop - "vst4.8 {d0, d2, d4, d6}, [%4]! \n" // store 8 ARGB - "vst4.8 {d1, d3, d5, d7}, [%4]! \n" // next 8 ARGB + "vst4.8 {d0, d2, d4, d6}, [%4]! \n" // store 8 ARGB + "vst4.8 {d1, d3, d5, d7}, [%4]! \n" // next 8 ARGB "bgt 1b \n" : "+r"(src_r), // %0 "+r"(src_g), // %1 |