Including the "arm_acle.h" header in aarch64-unwind.h requires stdint.h to be present and it may not be available during the first stage of cross-compilation of GCC.
When cross-building GCC for the aarch64-none-linux-gnu target (on any supporting host) using the 3-stage bootstrap build process when we build native compiler from source, libgcc fails to compile due to missing header that has not been installed yet. This could be worked around but it's better to fix the issue. libgcc/ChangeLog: * config/aarch64/aarch64-unwind.h (_CHKFEAT_GCS): Add. --- Regression tested on aarch64-unknown-linux-gnu and no regressions have been found. Is this OK for trunk? Applies to fe29b03825c. Thanks, Yury --- libgcc/config/aarch64/aarch64-unwind.h | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/libgcc/config/aarch64/aarch64-unwind.h b/libgcc/config/aarch64/aarch64-unwind.h index 85468f9685e..d11753a0e03 100644 --- a/libgcc/config/aarch64/aarch64-unwind.h +++ b/libgcc/config/aarch64/aarch64-unwind.h @@ -29,7 +29,6 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see #include "ansidecl.h" #include <stdbool.h> -#include <arm_acle.h> #define AARCH64_DWARF_REGNUM_RA_STATE 34 #define AARCH64_DWARF_RA_STATE_MASK 0x1 @@ -180,7 +179,7 @@ aarch64_demangle_return_addr (struct _Unwind_Context *context, } /* GCS enable flag for chkfeat instruction. */ - +#define _CHKFEAT_GCS 1 /* SME runtime function local to libgcc, streaming compatible and preserves more registers than the base PCS requires, but we don't rely on that here. */ -- 2.39.5