[clang] 75ec24e - [HLSL][clang][Driver] Fix error when using the option -fcgl in --driver-mode=dxc. (#97001)

via cfe-commits cfe-commits at lists.llvm.org
Mon Jul 1 10:44:30 PDT 2024


Author: Xiang Li
Date: 2024-07-01T13:44:26-04:00
New Revision: 75ec24e875762f038bf490d6e3fa5d4743d7afd1

URL: https://github.com/llvm/llvm-project/commit/75ec24e875762f038bf490d6e3fa5d4743d7afd1
DIFF: https://github.com/llvm/llvm-project/commit/75ec24e875762f038bf490d6e3fa5d4743d7afd1.diff

LOG: [HLSL][clang][Driver] Fix error when using the option -fcgl in --driver-mode=dxc. (#97001)

When -fcgl is set in --driver-mode=dxc, both -S and -emit-llvm are
currently enabled.

This results in the following error:
```
  error: '-S' action ignored; '-emit-llvm' action specified previously.
```
This change fixes the issue by not rendering -S in RenderHLSLOptions.

Additionally, a test has been added to ensure that enabling -fcgl does
not trigger any diagnostics

Fixes #97296

Added: 
    

Modified: 
    clang/lib/Driver/ToolChains/Clang.cpp
    clang/test/Driver/dxc_fcgl.hlsl

Removed: 
    


################################################################################
diff  --git a/clang/lib/Driver/ToolChains/Clang.cpp b/clang/lib/Driver/ToolChains/Clang.cpp
index 1b7cc82ea816e..27c451c565f2b 100644
--- a/clang/lib/Driver/ToolChains/Clang.cpp
+++ b/clang/lib/Driver/ToolChains/Clang.cpp
@@ -3666,7 +3666,6 @@ static void RenderHLSLOptions(const ArgList &Args, ArgStringList &CmdArgs,
   const unsigned ForwardedArguments[] = {options::OPT_dxil_validator_version,
                                          options::OPT_D,
                                          options::OPT_I,
-                                         options::OPT_S,
                                          options::OPT_O,
                                          options::OPT_emit_llvm,
                                          options::OPT_emit_obj,

diff  --git a/clang/test/Driver/dxc_fcgl.hlsl b/clang/test/Driver/dxc_fcgl.hlsl
index cfbf2503ddaae..fe65124c197bc 100644
--- a/clang/test/Driver/dxc_fcgl.hlsl
+++ b/clang/test/Driver/dxc_fcgl.hlsl
@@ -1,6 +1,9 @@
 // RUN: not %clang_dxc -fcgl -T lib_6_7 foo.hlsl -### %s 2>&1 | FileCheck %s
+// RUN: %clang_dxc -fcgl -T lib_6_7 %s -Xclang -verify
 
 // Make sure fcgl option flag which translated into "-emit-llvm" "-disable-llvm-passes".
-// CHECK:"-S"
-// CHECK-SAME:"-emit-llvm" "-disable-llvm-passes"
+// CHECK: "-emit-llvm"
+// CHECK-SAME: "-disable-llvm-passes"
 
+// Make sure fcgl option not generate any diagnostics.
+// expected-no-diagnostics


        


More information about the cfe-commits mailing list