@@ -201,6 +201,10 @@ def hlsl_Group : OptionGroup<"<HLSL group>">, Group<f_Group>,
201201 DocName<"HLSL options">,
202202 Visibility<[ClangOption]>;
203203
204+ def fsan_cov_Group : OptionGroup<"<-fsanitize-coverage group>">,
205+ Group<f_clang_Group>,
206+ DocName<"Sanitizer Coverage options">;
207+
204208// Feature groups - these take command line options that correspond directly to
205209// target specific features and can be translated directly from command line
206210// options.
@@ -2407,26 +2411,26 @@ def : Flag<["-"], "fno-sanitize-blacklist">,
24072411 Group<f_clang_Group>, Flags<[HelpHidden]>, Alias<fno_sanitize_ignorelist>;
24082412
24092413def fsanitize_coverage : CommaJoined<["-"], "fsanitize-coverage=">,
2410- Group<f_clang_Group >,
2414+ Group<fsan_cov_Group >,
24112415 HelpText<"Specify the type of coverage instrumentation for Sanitizers">;
24122416def fno_sanitize_coverage : CommaJoined<["-"], "fno-sanitize-coverage=">,
2413- Group<f_clang_Group >, Visibility<[ClangOption, CLOption]>,
2417+ Group<fsan_cov_Group >, Visibility<[ClangOption, CLOption]>,
24142418 HelpText<"Disable features of coverage instrumentation for Sanitizers">,
24152419 Values<"func,bb,edge,indirect-calls,trace-bb,trace-cmp,trace-div,trace-gep,"
24162420 "8bit-counters,trace-pc,trace-pc-guard,no-prune,inline-8bit-counters,"
24172421 "inline-bool-flag">;
24182422def fsanitize_coverage_allowlist : Joined<["-"], "fsanitize-coverage-allowlist=">,
2419- Group<f_clang_Group >, Visibility<[ClangOption, CLOption]>,
2423+ Group<fsan_cov_Group >, Visibility<[ClangOption, CLOption]>,
24202424 HelpText<"Restrict sanitizer coverage instrumentation exclusively to modules and functions that match the provided special case list, except the blocked ones">,
24212425 MarshallingInfoStringVector<CodeGenOpts<"SanitizeCoverageAllowlistFiles">>;
24222426def fsanitize_coverage_ignorelist : Joined<["-"], "fsanitize-coverage-ignorelist=">,
2423- Group<f_clang_Group >, Visibility<[ClangOption, CLOption]>,
2427+ Group<fsan_cov_Group >, Visibility<[ClangOption, CLOption]>,
24242428 HelpText<"Disable sanitizer coverage instrumentation for modules and functions "
24252429 "that match the provided special case list, even the allowed ones">,
24262430 MarshallingInfoStringVector<CodeGenOpts<"SanitizeCoverageIgnorelistFiles">>;
24272431def fsanitize_coverage_stack_depth_callback_min_EQ
24282432 : Joined<["-"], "fsanitize-coverage-stack-depth-callback-min=">,
2429- Group<f_clang_Group >,
2433+ Group<fsan_cov_Group >,
24302434 MetaVarName<"<M>">,
24312435 HelpText<"Use callback for max stack depth tracing with minimum stack "
24322436 "depth M">,
@@ -7901,70 +7905,87 @@ def linker_option : Joined<["--"], "linker-option=">,
79017905 HelpText<"Add linker option">,
79027906 MarshallingInfoStringVector<CodeGenOpts<"LinkerOptions">>;
79037907def fsanitize_coverage_type : Joined<["-"], "fsanitize-coverage-type=">,
7908+ Group<fsan_cov_Group>,
79047909 HelpText<"Sanitizer coverage type">,
79057910 MarshallingInfoInt<CodeGenOpts<"SanitizeCoverageType">>;
79067911def fsanitize_coverage_indirect_calls
79077912 : Flag<["-"], "fsanitize-coverage-indirect-calls">,
7913+ Group<fsan_cov_Group>,
79087914 HelpText<"Enable sanitizer coverage for indirect calls">,
79097915 MarshallingInfoFlag<CodeGenOpts<"SanitizeCoverageIndirectCalls">>;
79107916def fsanitize_coverage_trace_bb
79117917 : Flag<["-"], "fsanitize-coverage-trace-bb">,
7918+ Group<fsan_cov_Group>,
79127919 HelpText<"Enable basic block tracing in sanitizer coverage">,
79137920 MarshallingInfoFlag<CodeGenOpts<"SanitizeCoverageTraceBB">>;
79147921def fsanitize_coverage_trace_cmp
79157922 : Flag<["-"], "fsanitize-coverage-trace-cmp">,
7923+ Group<fsan_cov_Group>,
79167924 HelpText<"Enable cmp instruction tracing in sanitizer coverage">,
79177925 MarshallingInfoFlag<CodeGenOpts<"SanitizeCoverageTraceCmp">>;
79187926def fsanitize_coverage_trace_div
79197927 : Flag<["-"], "fsanitize-coverage-trace-div">,
7928+ Group<fsan_cov_Group>,
79207929 HelpText<"Enable div instruction tracing in sanitizer coverage">,
79217930 MarshallingInfoFlag<CodeGenOpts<"SanitizeCoverageTraceDiv">>;
79227931def fsanitize_coverage_trace_gep
79237932 : Flag<["-"], "fsanitize-coverage-trace-gep">,
7933+ Group<fsan_cov_Group>,
79247934 HelpText<"Enable gep instruction tracing in sanitizer coverage">,
79257935 MarshallingInfoFlag<CodeGenOpts<"SanitizeCoverageTraceGep">>;
79267936def fsanitize_coverage_8bit_counters
79277937 : Flag<["-"], "fsanitize-coverage-8bit-counters">,
7938+ Group<fsan_cov_Group>,
79287939 HelpText<"Enable frequency counters in sanitizer coverage">,
79297940 MarshallingInfoFlag<CodeGenOpts<"SanitizeCoverage8bitCounters">>;
79307941def fsanitize_coverage_inline_8bit_counters
79317942 : Flag<["-"], "fsanitize-coverage-inline-8bit-counters">,
7943+ Group<fsan_cov_Group>,
79327944 HelpText<"Enable inline 8-bit counters in sanitizer coverage">,
79337945 MarshallingInfoFlag<CodeGenOpts<"SanitizeCoverageInline8bitCounters">>;
79347946def fsanitize_coverage_inline_bool_flag
79357947 : Flag<["-"], "fsanitize-coverage-inline-bool-flag">,
7948+ Group<fsan_cov_Group>,
79367949 HelpText<"Enable inline bool flag in sanitizer coverage">,
79377950 MarshallingInfoFlag<CodeGenOpts<"SanitizeCoverageInlineBoolFlag">>;
79387951def fsanitize_coverage_pc_table
79397952 : Flag<["-"], "fsanitize-coverage-pc-table">,
7953+ Group<fsan_cov_Group>,
79407954 HelpText<"Create a table of coverage-instrumented PCs">,
79417955 MarshallingInfoFlag<CodeGenOpts<"SanitizeCoveragePCTable">>;
79427956def fsanitize_coverage_control_flow
79437957 : Flag<["-"], "fsanitize-coverage-control-flow">,
7958+ Group<fsan_cov_Group>,
79447959 HelpText<"Collect control flow of function">,
79457960 MarshallingInfoFlag<CodeGenOpts<"SanitizeCoverageControlFlow">>;
79467961def fsanitize_coverage_trace_pc
79477962 : Flag<["-"], "fsanitize-coverage-trace-pc">,
7963+ Group<fsan_cov_Group>,
79487964 HelpText<"Enable PC tracing in sanitizer coverage">,
79497965 MarshallingInfoFlag<CodeGenOpts<"SanitizeCoverageTracePC">>;
79507966def fsanitize_coverage_trace_pc_guard
79517967 : Flag<["-"], "fsanitize-coverage-trace-pc-guard">,
7968+ Group<fsan_cov_Group>,
79527969 HelpText<"Enable PC tracing with guard in sanitizer coverage">,
79537970 MarshallingInfoFlag<CodeGenOpts<"SanitizeCoverageTracePCGuard">>;
79547971def fsanitize_coverage_no_prune
79557972 : Flag<["-"], "fsanitize-coverage-no-prune">,
7973+ Group<fsan_cov_Group>,
79567974 HelpText<"Disable coverage pruning (i.e. instrument all blocks/edges)">,
79577975 MarshallingInfoFlag<CodeGenOpts<"SanitizeCoverageNoPrune">>;
79587976def fsanitize_coverage_stack_depth
79597977 : Flag<["-"], "fsanitize-coverage-stack-depth">,
7978+ Group<fsan_cov_Group>,
79607979 HelpText<"Enable max stack depth tracing">,
79617980 MarshallingInfoFlag<CodeGenOpts<"SanitizeCoverageStackDepth">>;
79627981def fsanitize_coverage_trace_loads
79637982 : Flag<["-"], "fsanitize-coverage-trace-loads">,
7983+ Group<fsan_cov_Group>,
79647984 HelpText<"Enable tracing of loads">,
79657985 MarshallingInfoFlag<CodeGenOpts<"SanitizeCoverageTraceLoads">>;
79667986def fsanitize_coverage_trace_stores
79677987 : Flag<["-"], "fsanitize-coverage-trace-stores">,
7988+ Group<fsan_cov_Group>,
79687989 HelpText<"Enable tracing of stores">,
79697990 MarshallingInfoFlag<CodeGenOpts<"SanitizeCoverageTraceStores">>;
79707991def fexperimental_sanitize_metadata_EQ_covered
0 commit comments