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