Author: Justin Bogner Date: 2023-08-15T15:00:19-07:00 New Revision: 95ae517bb4c332149b3c45cd7d1e6edf8b40077e
URL: https://github.com/llvm/llvm-project/commit/95ae517bb4c332149b3c45cd7d1e6edf8b40077e DIFF: https://github.com/llvm/llvm-project/commit/95ae517bb4c332149b3c45cd7d1e6edf8b40077e.diff LOG: [Driver] Remove CLDXCFlag by allowing CLFlag to specify visibility. NFC Added: Modified: clang/include/clang/Driver/Options.td Removed: ################################################################################ diff --git a/clang/include/clang/Driver/Options.td b/clang/include/clang/Driver/Options.td index e1e543be6e179c..d8d11497ea11e1 100644 --- a/clang/include/clang/Driver/Options.td +++ b/clang/include/clang/Driver/Options.td @@ -7603,46 +7603,43 @@ def cl_compile_Group : OptionGroup<"<clang-cl compile-only options>">, def cl_ignored_Group : OptionGroup<"<clang-cl ignored options>">, Group<cl_Group>; -class CLFlag<string name> : Option<["/", "-"], name, KIND_FLAG>, - Group<cl_Group>, Flags<[NoXarchOption]>, Visibility<[CLOption]>; +class CLFlag<string name, list<OptionVisibility> vis = [CLOption]> : + Option<["/", "-"], name, KIND_FLAG>, + Group<cl_Group>, Flags<[NoXarchOption]>, Visibility<vis>; -class CLDXCFlag<string name> : Option<["/", "-"], name, KIND_FLAG>, - Group<cl_Group>, Flags<[NoXarchOption]>, Visibility<[CLOption, DXCOption]>; +class CLCompileFlag<string name, list<OptionVisibility> vis = [CLOption]> : + Option<["/", "-"], name, KIND_FLAG>, + Group<cl_compile_Group>, Flags<[NoXarchOption]>, Visibility<vis>; -class CLCompileFlag<string name> : Option<["/", "-"], name, KIND_FLAG>, - Group<cl_compile_Group>, Flags<[NoXarchOption]>, Visibility<[CLOption]>; +class CLIgnoredFlag<string name, list<OptionVisibility> vis = [CLOption]> : + Option<["/", "-"], name, KIND_FLAG>, + Group<cl_ignored_Group>, Flags<[NoXarchOption]>, Visibility<vis>; -class CLIgnoredFlag<string name> : Option<["/", "-"], name, KIND_FLAG>, - Group<cl_ignored_Group>, Flags<[NoXarchOption]>, Visibility<[CLOption]>; +class CLJoined<string name, list<OptionVisibility> vis = [CLOption]> : + Option<["/", "-"], name, KIND_JOINED>, + Group<cl_Group>, Flags<[NoXarchOption]>, Visibility<vis>; -class CLJoined<string name> : Option<["/", "-"], name, KIND_JOINED>, - Group<cl_Group>, Flags<[NoXarchOption]>, Visibility<[CLOption]>; +class CLCompileJoined<string name, list<OptionVisibility> vis = [CLOption]> : + Option<["/", "-"], name, KIND_JOINED>, + Group<cl_compile_Group>, Flags<[NoXarchOption]>, Visibility<vis>; -class CLDXCJoined<string name> : Option<["/", "-"], name, KIND_JOINED>, - Group<cl_Group>, Flags<[NoXarchOption]>, Visibility<[CLOption, DXCOption]>; +class CLIgnoredJoined<string name, list<OptionVisibility> vis = [CLOption]> : + Option<["/", "-"], name, KIND_JOINED>, + Group<cl_ignored_Group>, Flags<[NoXarchOption, HelpHidden]>, Visibility<vis>; -class CLCompileJoined<string name> : Option<["/", "-"], name, KIND_JOINED>, - Group<cl_compile_Group>, Flags<[NoXarchOption]>, Visibility<[CLOption]>; +class CLJoinedOrSeparate<string name, list<OptionVisibility> vis = [CLOption]> : + Option<["/", "-"], name, KIND_JOINED_OR_SEPARATE>, + Group<cl_Group>, Flags<[NoXarchOption]>, Visibility<vis>; -class CLIgnoredJoined<string name> : Option<["/", "-"], name, KIND_JOINED>, - Group<cl_ignored_Group>, Flags<[NoXarchOption, HelpHidden]>, - Visibility<[CLOption]>; +class CLCompileJoinedOrSeparate<string name, + list<OptionVisibility> vis = [CLOption]> : + Option<["/", "-"], name, KIND_JOINED_OR_SEPARATE>, + Group<cl_compile_Group>, Flags<[NoXarchOption]>, Visibility<vis>; -class CLJoinedOrSeparate<string name> : Option<["/", "-"], name, - KIND_JOINED_OR_SEPARATE>, Group<cl_Group>, Flags<[NoXarchOption]>, - Visibility<[CLOption]>; - -class CLDXCJoinedOrSeparate<string name> : Option<["/", "-"], name, - KIND_JOINED_OR_SEPARATE>, Group<cl_Group>, Flags<[NoXarchOption]>, - Visibility<[CLOption, DXCOption]>; - -class CLCompileJoinedOrSeparate<string name> : Option<["/", "-"], name, - KIND_JOINED_OR_SEPARATE>, Group<cl_compile_Group>, - Flags<[NoXarchOption]>, Visibility<[CLOption]>; - -class CLRemainingArgsJoined<string name> : Option<["/", "-"], name, - KIND_REMAINING_ARGS_JOINED>, Group<cl_Group>, Flags<[NoXarchOption]>, - Visibility<[CLOption]>; +class CLRemainingArgsJoined<string name, + list<OptionVisibility> vis = [CLOption]> : + Option<["/", "-"], name, KIND_REMAINING_ARGS_JOINED>, + Group<cl_Group>, Flags<[NoXarchOption]>, Visibility<vis>; // Aliases: // (We don't put any of these in cl_compile_Group as the options they alias are @@ -7713,7 +7710,7 @@ def _SLASH_help : CLFlag<"help">, Alias<help>, def _SLASH_HELP : CLFlag<"HELP">, Alias<help>; def _SLASH_hotpatch : CLFlag<"hotpatch">, Alias<fms_hotpatch>, HelpText<"Create hotpatchable image">; -def _SLASH_I : CLDXCJoinedOrSeparate<"I">, +def _SLASH_I : CLJoinedOrSeparate<"I", [CLOption, DXCOption]>, HelpText<"Add directory to include search path">, MetaVarName<"<dir>">, Alias<I>; def _SLASH_J : CLFlag<"J">, HelpText<"Make char type unsigned">, @@ -7721,7 +7718,7 @@ def _SLASH_J : CLFlag<"J">, HelpText<"Make char type unsigned">, // The _SLASH_O option handles all the /O flags, but we also provide separate // aliased options to provide separate help messages. -def _SLASH_O : CLDXCJoined<"O">, +def _SLASH_O : CLJoined<"O", [CLOption, DXCOption]>, HelpText<"Set multiple /O flags at once; e.g. '/O2y-' for '/O2 /Oy-'">, MetaVarName<"<flags>">; def : CLFlag<"O1">, Alias<_SLASH_O>, AliasArgs<["1"]>, @@ -7734,7 +7731,7 @@ def : CLFlag<"Ob1">, Alias<_SLASH_O>, AliasArgs<["b1"]>, HelpText<"Only inline functions explicitly or implicitly marked inline">; def : CLFlag<"Ob2">, Alias<_SLASH_O>, AliasArgs<["b2"]>, HelpText<"Inline functions as deemed beneficial by the compiler">; -def : CLDXCFlag<"Od">, Alias<_SLASH_O>, AliasArgs<["d"]>, +def : CLFlag<"Od", [CLOption, DXCOption]>, Alias<_SLASH_O>, AliasArgs<["d"]>, HelpText<"Disable optimization">; def : CLFlag<"Og">, Alias<_SLASH_O>, AliasArgs<["g"]>, HelpText<"No effect">; _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits