This patch adds support for C23's _BitInt for the AArch64 port when compiling for little endianness. Big Endianness requires further target-agnostic support and we therefor disable it for now. gcc/ChangeLog: * config/aarch64/aarch64.cc (TARGET_C_BITINT_TYPE_INFO): Declare MACRO. (aarch64_bitint_type_info): New function. (aarch64_return_in_memory_1): Return large _BitInt's in memory. (aarch64_function_arg_alignment): Adapt to correctly return the ABI mandated alignment of _BitInt(N) where N > 128 as the alignment of TImode. (aarch64_composite_type_p): Return true for _BitInt(N), where N > 128. libgcc/ChangeLog: * config/aarch64/t-softfp: Add fixtfbitint, floatbitinttf and floatbitinthf to the softfp_extras variable to ensure the runtime support is available for _BitInt. --- gcc/config/aarch64/aarch64.cc | 44 +++++++++++++++++++++++++++++++++- libgcc/config/aarch64/t-softfp | 3 ++- 2 files changed, 45 insertions(+), 2 deletions(-)