On Thu, Sep 25, 2025 at 10:23:46AM +0100, Andre Vieira wrote:
> +/* Implement TARGET_C_BITINT_TYPE_INFO
> +   Return true if _BitInt(N) is supported and fill its details into *INFO.  
> */
> +
> +bool
> +arm_bitint_type_info (int n, struct bitint_info *info)
> +{
> +  if (TARGET_BIG_END)
> +    return false;

Why?  Just that it isn't tested so far?  Big endian support in the generic
code should be there already, s390x _BitInt works.

> --- a/libgcc/config/arm/libgcc-bpabi.ver
> +++ b/libgcc/config/arm/libgcc-bpabi.ver
> @@ -106,3 +106,11 @@ GCC_3.5 {
>  GCC_4.3.0 {
>    _Unwind_Backtrace
>  }
> +
> +GCC_16.0.0 {

I miss
  __mulbitint3
  __divmodbitint4
here, that is pretty much essential to export.
Don't you also need %import above it from whatever was the latest
GCC_* symver on arm?

> +    __fixsfbitint
> +    __fixdfbitint
> +    __floatbitinthf
> +    __floatbitintsf
> +    __floatbitintdf
> +}
> diff --git a/libgcc/config/arm/t-softfp b/libgcc/config/arm/t-softfp
> index 554ec9bc47b..68aff4de068 100644
> --- a/libgcc/config/arm/t-softfp
> +++ b/libgcc/config/arm/t-softfp
> @@ -1,2 +1,4 @@
>  softfp_wrap_start := '\#if !__ARM_ARCH_ISA_ARM && __ARM_ARCH_ISA_THUMB == 1'
>  softfp_wrap_end := '\#endif'
> +bitint_extras += floatbitinthf
> +softfp_cflags := -mfp16-format=ieee

Other than that LGTM but I think you want Richard/Ramana to ack it; I'd suggest
to xfail the 2 tests for arm with a PR (and CC me on that), that can be
resolved incrementally.

        Jakub

Reply via email to