[clang] [LinkerWrapper] Use the correct empty file on Windows (PR #84322)

Joseph Huber via cfe-commits cfe-commits at lists.llvm.org
Thu Mar 7 05:50:12 PST 2024


https://github.com/jhuber6 created https://github.com/llvm/llvm-project/pull/84322

Summary:
The clang-offload-bundler uses an empty file to control the bundles made
for embedding. Previously this still used `/dev/null` by mistake even on
Windows.


>From eb6dd7ac6cfd52ce18b17a683e55835a261f7138 Mon Sep 17 00:00:00 2001
From: Joseph Huber <huberjn at outlook.com>
Date: Thu, 7 Mar 2024 07:48:38 -0600
Subject: [PATCH] [LinkerWrapper] Use the correct empty file on Windows

Summary:
The clang-offload-bundler uses an empty file to control the bundles made
for embedding. Previously this still used `/dev/null` by mistake even on
Windows.
---
 clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp b/clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
index 576e8f2cd7f8fd..849b12e1e8c6fc 100644
--- a/clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
+++ b/clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
@@ -410,7 +410,10 @@ fatbinary(ArrayRef<std::pair<StringRef, StringRef>> InputFiles,
     Targets.push_back(Saver.save("hipv4-amdgcn-amd-amdhsa--" + Arch));
   CmdArgs.push_back(Saver.save(llvm::join(Targets, ",")));
 
-  CmdArgs.push_back("-input=/dev/null");
+  if (Triple.isOSWindows())
+    CmdArgs.push_back("-input=NUL");
+  else
+    CmdArgs.push_back("-input=/dev/null");
   for (const auto &[File, Arch] : InputFiles)
     CmdArgs.push_back(Saver.save("-input=" + File));
 



More information about the cfe-commits mailing list