summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/arch/arm/eabi_compat.c23
1 files changed, 23 insertions, 0 deletions
diff --git a/src/arch/arm/eabi_compat.c b/src/arch/arm/eabi_compat.c
index 2a110d5ccf..849fc6507f 100644
--- a/src/arch/arm/eabi_compat.c
+++ b/src/arch/arm/eabi_compat.c
@@ -23,6 +23,14 @@ void __aeabi_unwind_cpp_pr1(void)
{
}
+/* Support the alias for the __aeabi_memcpy which may
+ assume memory alignment. */
+void __aeabi_memcpy4(void *dest, const void *src, size_t n)
+ __attribute((alias("__aeabi_memcpy")));
+
+void __aeabi_memcpy8(void *dest, const void *src, size_t n)
+ __attribute((alias("__aeabi_memcpy")));
+
void __aeabi_memcpy(void *dest, const void *src, size_t n);
void __aeabi_memcpy(void *dest, const void *src, size_t n)
{
@@ -34,3 +42,18 @@ void __aeabi_memset(void *dest, size_t n, int c)
{
(void)memset(dest, c, n);
}
+
+/* Support the alias for the __aeabi_memclr which may
+ assume memory alignment. */
+void __aeabi_memclr4(void *dest, size_t n)
+ __attribute((alias("__aeabi_memclr")));
+
+void __aeabi_memclr8(void *dest, size_t n)
+ __attribute((alias("__aeabi_memclr")));
+
+/* Support the routine __aeabi_memclr. */
+void __aeabi_memclr(void *dest, size_t n);
+void __aeabi_memclr(void *dest, size_t n)
+{
+ __aeabi_memset(dest, n, 0);
+}