Martin L Roth has submitted this change. ( https://review.coreboot.org/c/coreboot/+/69743 )
Change subject: arch/arm/eabi_compat.c: Add eabi_clrX and eabi_memcyX ......................................................................
arch/arm/eabi_compat.c: Add eabi_clrX and eabi_memcyX
Clang generated code uses this for zero initialized variables.
Change-Id: I460a0096918141c1cf8826bdf1853a3aa3aecff8 Signed-off-by: Arthur Heymans arthur@aheymans.xyz Reviewed-on: https://review.coreboot.org/c/coreboot/+/69743 Tested-by: build bot (Jenkins) no-reply@coreboot.org Reviewed-by: Martin L Roth gaumless@gmail.com --- M src/arch/arm/eabi_compat.c 1 file changed, 38 insertions(+), 0 deletions(-)
Approvals: build bot (Jenkins): Verified Martin L Roth: Looks good to me, approved
diff --git a/src/arch/arm/eabi_compat.c b/src/arch/arm/eabi_compat.c index 2a110d5..849fc65 100644 --- a/src/arch/arm/eabi_compat.c +++ b/src/arch/arm/eabi_compat.c @@ -23,6 +23,14 @@ { }
+/* 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)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); +}