From: Zac Walker <zacwal...@microsoft.com>
Date: Fri, 1 Mar 2024 01:40:53 +0100
Subject: [PATCH v3 01/12] Introduce aarch64-w64-mingw32 target

Add the initial aarch64-w64-mingw32 target for gcc.

This is the first commit in a sequence of patch series to add
new aarch64-w64-mingw32 target.

Coauthors: Zac Walker <zacwal...@microsoft.com>,
Mark Harmstone <m...@harmstone.com>  and
Ron Riddle <ron.rid...@microsoft.com>

Refactored, prepared, and validated by
Radek Barton <radek.bar...@microsoft.com> and
Evgeny Karpov <evgeny.kar...@microsoft.com>

fixincludes/ChangeLog:

        * mkfixinc.sh: Extend for *-mingw32* targets.

gcc/ChangeLog:

        * config.gcc: Add aarch64-w64-mingw32 target.
---
 fixincludes/mkfixinc.sh |  3 +--
 gcc/config.gcc          | 13 +++++++++++++
 2 files changed, 14 insertions(+), 2 deletions(-)

diff --git a/fixincludes/mkfixinc.sh b/fixincludes/mkfixinc.sh
index df90720b716..7112f4dcd64 100755
--- a/fixincludes/mkfixinc.sh
+++ b/fixincludes/mkfixinc.sh
@@ -12,8 +12,7 @@ target=fixinc.sh
 # Check for special fix rules for particular targets
 case $machine in
     i?86-*-cygwin* | \
-    i?86-*-mingw32* | \
-    x86_64-*-mingw32* | \
+    *-mingw32* | \
     powerpc-*-eabisim* | \
     powerpc-*-eabi*    | \
     powerpc-*-rtems*   | \
diff --git a/gcc/config.gcc b/gcc/config.gcc
index 5df3c52f8e9..6f97f24af10 100644
--- a/gcc/config.gcc
+++ b/gcc/config.gcc
@@ -1271,6 +1271,19 @@ aarch64*-*-gnu*)
         tmake_file="${tmake_file} aarch64/t-aarch64"
         tm_defines="${tm_defines}  TARGET_DEFAULT_ASYNC_UNWIND_TABLES=1"
        ;;
+aarch64-*-mingw*)
+       tmake_file="${tmake_file} aarch64/t-aarch64"
+       case ${enable_threads} in
+         "" | yes | win32)
+           thread_file='win32'
+           ;;
+         posix)
+           thread_file='posix'
+           ;;
+       esac
+       default_use_cxa_atexit=yes
+       user_headers_inc_next_post="${user_headers_inc_next_post} float.h"
+       ;;
 aarch64*-wrs-vxworks*)
         tm_file="${tm_file} elfos.h aarch64/aarch64-elf.h"
         tm_file="${tm_file} vx-common.h vxworks.h aarch64/aarch64-vxworks.h"
-- 
2.25.1

Reply via email to