diff options
author | Vignesh Venkatasubramanian <vigneshv@google.com> | 2023-06-12 23:55:07 +0000 |
---|---|---|
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | 2023-06-12 23:55:07 +0000 |
commit | 1f9deebc6ecf78b637dff50d62772b48332ea5ea (patch) | |
tree | 303e8eabb435a80ebec36a19c23ca85744d58fb5 /files/source/rotate_argb.cc | |
parent | 435db9f11b09187e0d60683813a28d07cc13166b (diff) | |
parent | 8e521e2ea589b4cafb788330f83037a0413f200a (diff) | |
download | libyuv-1f9deebc6ecf78b637dff50d62772b48332ea5ea.tar.gz |
Merge "libyuv: Update to r1871 (2a6cb743)" am: 8e521e2ea5
Original change: https://android-review.googlesource.com/c/platform/external/libyuv/+/2622518
Change-Id: I677290d9641c9a7a343f79cf385e88af70ec589d
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
Diffstat (limited to 'files/source/rotate_argb.cc')
-rw-r--r-- | files/source/rotate_argb.cc | 16 |
1 files changed, 15 insertions, 1 deletions
diff --git a/files/source/rotate_argb.cc b/files/source/rotate_argb.cc index 539cf98d..c7239010 100644 --- a/files/source/rotate_argb.cc +++ b/files/source/rotate_argb.cc @@ -8,11 +8,12 @@ * be found in the AUTHORS file in the root of the source tree. */ -#include "libyuv/rotate.h" +#include "libyuv/rotate_argb.h" #include "libyuv/convert.h" #include "libyuv/cpu_id.h" #include "libyuv/planar_functions.h" +#include "libyuv/rotate.h" #include "libyuv/row.h" #include "libyuv/scale_row.h" /* for ScaleARGBRowDownEven_ */ @@ -155,6 +156,14 @@ static int ARGBRotate180(const uint8_t* src_argb, } } #endif +#if defined(HAS_ARGBMIRRORROW_LSX) + if (TestCpuFlag(kCpuHasLSX)) { + ARGBMirrorRow = ARGBMirrorRow_Any_LSX; + if (IS_ALIGNED(width, 8)) { + ARGBMirrorRow = ARGBMirrorRow_LSX; + } + } +#endif #if defined(HAS_ARGBMIRRORROW_LASX) if (TestCpuFlag(kCpuHasLASX)) { ARGBMirrorRow = ARGBMirrorRow_Any_LASX; @@ -183,6 +192,11 @@ static int ARGBRotate180(const uint8_t* src_argb, CopyRow = IS_ALIGNED(width * 4, 32) ? CopyRow_NEON : CopyRow_Any_NEON; } #endif +#if defined(HAS_COPYROW_RVV) + if (TestCpuFlag(kCpuHasRVV)) { + CopyRow = CopyRow_RVV; + } +#endif // Odd height will harmlessly mirror the middle row twice. for (y = 0; y < half_height; ++y) { |