https://github.com/s-perron updated 
https://github.com/llvm/llvm-project/pull/137378

>From 163b214e77e63d919ea7fdd1e52762263037175d Mon Sep 17 00:00:00 2001
From: Steven Perron <stevenper...@google.com>
Date: Fri, 25 Apr 2025 13:16:53 -0400
Subject: [PATCH 1/2] [HLSL] Allow non `.hlsl` files as source files

Changes the driver to assume input file with an unknown extension are
HLSL source files instead of object files.

Fixes https://github.com/llvm/llvm-project/issues/137370
---
 clang/lib/Driver/Driver.cpp  | 2 ++
 clang/test/Driver/dxc_I.test | 4 ++++
 2 files changed, 6 insertions(+)
 create mode 100644 clang/test/Driver/dxc_I.test

diff --git a/clang/lib/Driver/Driver.cpp b/clang/lib/Driver/Driver.cpp
index 2b8c6e35263b1..a648cc928afdc 100644
--- a/clang/lib/Driver/Driver.cpp
+++ b/clang/lib/Driver/Driver.cpp
@@ -3001,6 +3001,8 @@ void Driver::BuildInputs(const ToolChain &TC, 
DerivedArgList &Args,
               Ty = types::TY_CXX;
             else if (CCCIsCPP() || CCGenDiagnostics)
               Ty = types::TY_C;
+            else if (IsDXCMode())
+              Ty = types::TY_HLSL;
             else
               Ty = types::TY_Object;
           }
diff --git a/clang/test/Driver/dxc_I.test b/clang/test/Driver/dxc_I.test
new file mode 100644
index 0000000000000..e88537c6b1ab8
--- /dev/null
+++ b/clang/test/Driver/dxc_I.test
@@ -0,0 +1,4 @@
+// RUN: %clang_dxc -Tlib_6_3  -### %s 2>&1 | FileCheck %s
+
+// Make sure a non `.hlsl` file is considered an HLSL source file in dxc mode.
+// CHECK: "-x" "hlsl" "{{.*}}/dxc_I.test"

>From 631547dced2b720cf1f7f54da4e1fe5046c1f327 Mon Sep 17 00:00:00 2001
From: Steven Perron <stevenper...@google.com>
Date: Mon, 28 Apr 2025 11:01:15 -0400
Subject: [PATCH 2/2] Remove slash from test. Win and Linux use a different
 charater.

---
 clang/test/Driver/dxc_I.test | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/clang/test/Driver/dxc_I.test b/clang/test/Driver/dxc_I.test
index e88537c6b1ab8..c78382375b2b1 100644
--- a/clang/test/Driver/dxc_I.test
+++ b/clang/test/Driver/dxc_I.test
@@ -1,4 +1,4 @@
 // RUN: %clang_dxc -Tlib_6_3  -### %s 2>&1 | FileCheck %s
 
 // Make sure a non `.hlsl` file is considered an HLSL source file in dxc mode.
-// CHECK: "-x" "hlsl" "{{.*}}/dxc_I.test"
+// CHECK: "-x" "hlsl" "{{.*}}dxc_I.test"

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to