diff options
author | Sam Edwards <cfsworks@gmail.com> | 2025-03-15 15:18:02 -0700 |
---|---|---|
committer | Tom Rini <trini@konsulko.com> | 2025-04-02 14:33:50 -0600 |
commit | deba40dd0ba452a3f15a359894e6b50494870d0e (patch) | |
tree | b8c8a0a79651771c6478adb77d0962af7fa69364 | |
parent | 828484a7740d4ebfed8db85e4b4569cfbfe66cde (diff) |
arm: Add aligned-memory aliases to eabi_compat
These are sometimes used by LLVM's code-generator, when it can guarantee that
the memory buffer being passed is aligned on a (4- or 8-byte) boundary. They
can safely be aliased to the unaligned versions.
Signed-off-by: Sam Edwards <CFSworks@gmail.com>
Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
-rw-r--r-- | arch/arm/lib/eabi_compat.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/arch/arm/lib/eabi_compat.c b/arch/arm/lib/eabi_compat.c index e4190c049a3..e6cafcc5f2b 100644 --- a/arch/arm/lib/eabi_compat.c +++ b/arch/arm/lib/eabi_compat.c @@ -33,12 +33,24 @@ void __aeabi_memcpy(void *dest, const void *src, size_t n) (void) memcpy(dest, src, n); } +void __aeabi_memcpy4(void *dest, const void *src, size_t n) __alias(__aeabi_memcpy); + +void __aeabi_memcpy8(void *dest, const void *src, size_t n) __alias(__aeabi_memcpy); + void __aeabi_memset(void *dest, size_t n, int c) { (void) memset(dest, c, n); } +void __aeabi_memset4(void *dest, size_t n, int c) __alias(__aeabi_memset); + +void __aeabi_memset8(void *dest, size_t n, int c) __alias(__aeabi_memset); + void __aeabi_memclr(void *dest, size_t n) { (void) memset(dest, 0, n); } + +void __aeabi_memclr4(void *dest, size_t n) __alias(__aeabi_memclr); + +void __aeabi_memclr8(void *dest, size_t n) __alias(__aeabi_memclr); |