From: Vladimir Serbinenko Date: Thu, 23 Jul 2015 00:15:46 +0000 (+0200) Subject: arm-emu: Add __aeabi_memcpy* and __aeabi_memclr* symbols. X-Git-Tag: 2.02-beta3~244 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=ca73ae446c426661a8f05196df279e8b973fead9;p=thirdparty%2Fgrub.git arm-emu: Add __aeabi_memcpy* and __aeabi_memclr* symbols. Fixes compilation with clang. --- diff --git a/configure.ac b/configure.ac index e54b9df12..c864311f7 100644 --- a/configure.ac +++ b/configure.ac @@ -1181,7 +1181,7 @@ fi # Check for libgcc symbols if test x"$platform" = xemu; then -AC_CHECK_FUNCS(__udivsi3 __umodsi3 __divsi3 __modsi3 __divdi3 __moddi3 __udivdi3 __umoddi3 __ctzdi2 __ctzsi2 __aeabi_uidiv __aeabi_uidivmod __aeabi_idiv __aeabi_idivmod __aeabi_ulcmp __muldi3 __aeabi_lmul __aeabi_memcpy __aeabi_memset __aeabi_lasr __aeabi_llsl __aeabi_llsr _restgpr_14_x __ucmpdi2 __ashldi3 __ashrdi3 __lshrdi3 __bswapsi2 __bswapdi2 __bzero __register_frame_info __deregister_frame_info ___chkstk_ms __chkstk_ms) +AC_CHECK_FUNCS(__udivsi3 __umodsi3 __divsi3 __modsi3 __divdi3 __moddi3 __udivdi3 __umoddi3 __ctzdi2 __ctzsi2 __aeabi_uidiv __aeabi_uidivmod __aeabi_idiv __aeabi_idivmod __aeabi_ulcmp __muldi3 __aeabi_lmul __aeabi_memcpy __aeabi_memcpy4 __aeabi_memcpy8 __aeabi_memclr __aeabi_memclr4 __aeabi_memclr8 __aeabi_memset __aeabi_lasr __aeabi_llsl __aeabi_llsr _restgpr_14_x __ucmpdi2 __ashldi3 __ashrdi3 __lshrdi3 __bswapsi2 __bswapdi2 __bzero __register_frame_info __deregister_frame_info ___chkstk_ms __chkstk_ms) fi if test "x$TARGET_APPLE_LINKER" = x1 ; then diff --git a/include/grub/compiler-rt-emu.h b/include/grub/compiler-rt-emu.h index edc82999e..b21425d9e 100644 --- a/include/grub/compiler-rt-emu.h +++ b/include/grub/compiler-rt-emu.h @@ -115,11 +115,36 @@ void * EXPORT_FUNC (__aeabi_memcpy) (void *dest, const void *src, grub_size_t n); #endif +#ifdef HAVE___AEABI_MEMCPY4 +void * +EXPORT_FUNC (__aeabi_memcpy4) (void *dest, const void *src, grub_size_t n); +#endif + +#ifdef HAVE___AEABI_MEMCPY8 +void * +EXPORT_FUNC (__aeabi_memcpy8) (void *dest, const void *src, grub_size_t n); +#endif + #ifdef HAVE___AEABI_MEMSET void * EXPORT_FUNC(__aeabi_memset) (void *s, int c, grub_size_t n); #endif +#ifdef HAVE___AEABI_MEMCLR +void * +EXPORT_FUNC(__aeabi_memclr) (void *s, grub_size_t n); +#endif + +#ifdef HAVE___AEABI_MEMCLR4 +void * +EXPORT_FUNC(__aeabi_memclr4) (void *s, grub_size_t n); +#endif + +#ifdef HAVE___AEABI_MEMCLR8 +void * +EXPORT_FUNC(__aeabi_memclr8) (void *s, grub_size_t n); +#endif + #ifdef HAVE___AEABI_LASR grub_uint64_t EXPORT_FUNC (__aeabi_lasr) (grub_uint64_t u, int b);