commit | 2dfb84b311c064dd0d2872c2f94607cf8d0aaf9c | [log] [tgz] |
---|---|---|
author | George Steed <george.steed@arm.com> | Mon Apr 22 10:21:48 2024 |
committer | Frank Barchard <fbarchard@chromium.org> | Mon Sep 16 04:33:22 2024 |
tree | 19cd27675148c095e586d8250d99836fc157822f | |
parent | 432d186116eaef53671152b32131afb2c799c1dc [diff] |
[AArch64] Unroll to use full vectors in ARGBToARGB1555Row_NEON By loading packed 16-bit AR/GB data and operating on that directly we avoid the need to perform a separate widening step before the conversion. Reduction in runtime observed compared to the existing Neon code: Cortex-A55: -13.2% Cortex-A510: -5.4% Cortex-A76: -21.5% Cortex-A720: -25.2% Cortex-X1: -50.6% Cortex-X2: -36.8% Bug: b/42280945 Change-Id: I780c71fdff1d017464c6e4e38f86979dda0e43ad Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/5790973 Reviewed-by: Frank Barchard <fbarchard@chromium.org> Reviewed-by: Justin Green <greenjustin@google.com>
libyuv is an open source project that includes YUV scaling and conversion functionality.
See Getting started for instructions on how to get started developing.
You can also browse the docs directory for more documentation.