Author: Jacek Caban Date: 2024-11-18T14:29:01+01:00 New Revision: 40ea61b41d3b70ccf39d5ec11ac54100c9b0b388
URL: https://github.com/llvm/llvm-project/commit/40ea61b41d3b70ccf39d5ec11ac54100c9b0b388 DIFF: https://github.com/llvm/llvm-project/commit/40ea61b41d3b70ccf39d5ec11ac54100c9b0b388.diff LOG: [Clang][MinGW] Pass --functionpadmin to the linker when -fms-hotpatch is used (#116512) 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 e51daca5025a80..963de81027ca9f 100644 --- a/clang/lib/Driver/ToolChains/MinGW.cpp +++ b/clang/lib/Driver/ToolChains/MinGW.cpp @@ -188,6 +188,9 @@ void tools::MinGW::Linker::ConstructJob(Compilation &C, const JobAction &JA, << A->getSpelling() << GuardArgs; } + if (Args.hasArg(options::OPT_fms_hotpatch)) + CmdArgs.push_back("--functionpadmin"); + CmdArgs.push_back("-o"); const char *OutputFile = Output.getFilename(); // GCC implicitly adds an .exe extension if it is given an output file name diff --git a/clang/test/Driver/mingw.cpp b/clang/test/Driver/mingw.cpp index 4a9ba4d259b46f..9790c86a364f85 100644 --- a/clang/test/Driver/mingw.cpp +++ b/clang/test/Driver/mingw.cpp @@ -84,3 +84,7 @@ // 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" + +// RUN: %clang --target=i686-windows-gnu -fms-hotpatch -### -- %s 2>&1 \ +// RUN: | FileCheck %s --check-prefix=FUNCTIONPADMIN +// FUNCTIONPADMIN: "--functionpadmin" _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits