diff options
author | Frank Barchard <fbarchard@google.com> | 2021-09-09 16:03:21 -0700 |
---|---|---|
committer | libyuv LUCI CQ <libyuv-scoped@luci-project-accounts.iam.gserviceaccount.com> | 2021-09-09 23:46:46 +0000 |
commit | ed5a9c81dedfa293d2ba9db65f37cf2c64c85be7 (patch) | |
tree | 7fa82fe4afee32e1f3945ea30fe6ed554dbd74aa /source/row_neon64.cc | |
parent | c6ed1b8f0edcc9fb49897ac71198b149491a7493 (diff) | |
download | libyuv-ed5a9c81dedfa293d2ba9db65f37cf2c64c85be7.tar.gz |
change ld1 to ldr for memory references to allow GCC to use an offset
Bug: chromium:819294, libyuv:903
Change-Id: I1cd19cc5a068c421d1112c9ea6090e18fb002a4c
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/3152821
Reviewed-by: Wan-Teh Chang <wtc@google.com>
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
Diffstat (limited to 'source/row_neon64.cc')
-rw-r--r-- | source/row_neon64.cc | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/source/row_neon64.cc b/source/row_neon64.cc index b9fafd8d..e62e52b1 100644 --- a/source/row_neon64.cc +++ b/source/row_neon64.cc @@ -1711,7 +1711,7 @@ void ARGBToAB64Row_NEON(const uint8_t* src_argb, uint16_t* dst_ab64, int width) { asm volatile( - "ld1 {v4.16b}, %3 \n" // shuffler + "ldr q4, %3 \n" // shuffler "1: \n" "ldp q0, q2, [%0], #32 \n" // load 8 pixels "tbl v0.16b, {v0.16b}, v4.16b \n" @@ -1726,7 +1726,7 @@ void ARGBToAB64Row_NEON(const uint8_t* src_argb, : "+r"(src_argb), // %0 "+r"(dst_ab64), // %1 "+r"(width) // %2 - : "Q"(kShuffleARGBToABGR) // %3 + : "m"(kShuffleARGBToABGR) // %3 : "cc", "memory", "v0", "v1", "v2", "v3", "v4"); } @@ -1737,7 +1737,7 @@ void AR64ToARGBRow_NEON(const uint16_t* src_ar64, uint8_t* dst_argb, int width) { asm volatile( - "ld1 {v4.16b}, %3 \n" // shuffler + "ldr q4, %3 \n" // shuffler "1: \n" "ldp q0, q1, [%0], #32 \n" // load 4 pixels "ldp q2, q3, [%0], #32 \n" // load 4 pixels @@ -1750,7 +1750,7 @@ void AR64ToARGBRow_NEON(const uint16_t* src_ar64, : "+r"(src_ar64), // %0 "+r"(dst_argb), // %1 "+r"(width) // %2 - : "Q"(kShuffleAR64ToARGB) // %3 + : "m"(kShuffleAR64ToARGB) // %3 : "cc", "memory", "v0", "v1", "v2", "v3", "v4"); } @@ -1761,7 +1761,7 @@ void AB64ToARGBRow_NEON(const uint16_t* src_ab64, uint8_t* dst_argb, int width) { asm volatile( - "ld1 {v4.16b}, %3 \n" // shuffler + "ldr q4, %3 \n" // shuffler "1: \n" "ldp q0, q1, [%0], #32 \n" // load 4 pixels "ldp q2, q3, [%0], #32 \n" // load 4 pixels @@ -1774,7 +1774,7 @@ void AB64ToARGBRow_NEON(const uint16_t* src_ab64, : "+r"(src_ab64), // %0 "+r"(dst_argb), // %1 "+r"(width) // %2 - : "Q"(kShuffleAB64ToARGB) // %3 + : "m"(kShuffleAB64ToARGB) // %3 : "cc", "memory", "v0", "v1", "v2", "v3", "v4"); } |