Author: Billy Laws Date: 2024-01-31T13:51:12+02:00 New Revision: d74619abb53bc9c5680f83bb1dead9c65135ecc6
URL: https://github.com/llvm/llvm-project/commit/d74619abb53bc9c5680f83bb1dead9c65135ecc6 DIFF: https://github.com/llvm/llvm-project/commit/d74619abb53bc9c5680f83bb1dead9c65135ecc6.diff LOG: [clang] [MinGW] Handle linking ARM64EC code (#78912) Added: Modified: clang/lib/Driver/ToolChains/MinGW.cpp clang/test/Driver/mingw.cpp Removed: ################################################################################ diff --git a/clang/lib/Driver/ToolChains/MinGW.cpp b/clang/lib/Driver/ToolChains/MinGW.cpp index 067758c05e97c..2b7fc104ea95a 100644 --- a/clang/lib/Driver/ToolChains/MinGW.cpp +++ b/clang/lib/Driver/ToolChains/MinGW.cpp @@ -132,7 +132,10 @@ void tools::MinGW::Linker::ConstructJob(Compilation &C, const JobAction &JA, CmdArgs.push_back("thumb2pe"); break; case llvm::Triple::aarch64: - CmdArgs.push_back("arm64pe"); + if (TC.getEffectiveTriple().isWindowsArm64EC()) + CmdArgs.push_back("arm64ecpe"); + else + CmdArgs.push_back("arm64pe"); break; default: D.Diag(diag::err_target_unknown_triple) << TC.getEffectiveTriple().str(); diff --git a/clang/test/Driver/mingw.cpp b/clang/test/Driver/mingw.cpp index bb22a0652b486..e42ff4554e452 100644 --- a/clang/test/Driver/mingw.cpp +++ b/clang/test/Driver/mingw.cpp @@ -80,3 +80,7 @@ // RUN: %clang -target i686-windows-gnu -### %s 2>&1 | FileCheck -check-prefix=CHECK_NO_INIT_ARRAY %s // CHECK_NO_INIT_ARRAY: "-fno-use-init-array" + +// RUN: %clang -target arm64ec-windows-gnu -### -o /dev/null %s 2>&1 \ +// RUN: | FileCheck %s --check-prefix CHECK_MINGW_EC_LINK +// CHECK_MINGW_EC_LINK: "-m" "arm64ecpe" _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits