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 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits