grub-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] riscv64-emu: add __clzdi2 symbol


From: Daniel Kiper
Subject: Re: [PATCH] riscv64-emu: add __clzdi2 symbol
Date: Wed, 18 Sep 2019 20:23:26 +0200
User-agent: NeoMutt/20170113 (1.7.2)

Adding Alex and Eric...

On Mon, Sep 09, 2019 at 02:34:25PM +0200, Andreas Schwab wrote:
> This is needed for the zstd module.
>
> Signed-off-by: Andreas Schwab <address@hidden>
> ---
>  configure.ac                   | 2 +-
>  include/grub/compiler-rt-emu.h | 5 +++++
>  2 files changed, 6 insertions(+), 1 deletion(-)
>
> diff --git a/configure.ac b/configure.ac
> index e07ba4b56..7d74eba66 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -1370,7 +1370,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_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)
> +AC_CHECK_FUNCS(__udivsi3 __umodsi3 __divsi3 __modsi3 __divdi3 __moddi3 
> __udivdi3 __umoddi3 __ctzdi2 __ctzsi2 __clzdi2 __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 b21425d9e..661f9876f 100644
> --- a/include/grub/compiler-rt-emu.h
> +++ b/include/grub/compiler-rt-emu.h
> @@ -74,6 +74,11 @@ unsigned
>  EXPORT_FUNC (__ctzsi2) (grub_uint32_t x);
>  #endif
>
> +#ifdef HAVE___CLZDI2
> +unsigned
> +EXPORT_FUNC (__clzdi2) (grub_uint64_t x);
> +#endif
> +

Hmmm... Is __clzdi2() declaration correct? Please take a look at
grub-core/kern/compiler-rt.c. __clzdi2() returns int instead of
unsigned there. Hence, it should be fixed here or there.

Daniel



reply via email to

[Prev in Thread] Current Thread [Next in Thread]