Author: Fangrui Song Date: 2022-10-28T16:15:14-07:00 New Revision: d3e99d61a42bbac0da6c56e34fc5a2139549616f
URL: https://github.com/llvm/llvm-project/commit/d3e99d61a42bbac0da6c56e34fc5a2139549616f DIFF: https://github.com/llvm/llvm-project/commit/d3e99d61a42bbac0da6c56e34fc5a2139549616f.diff LOG: [Driver] Use addOptInFlag/addOptOutFlag. NFC Added: Modified: clang/lib/Driver/ToolChains/Clang.cpp Removed: ################################################################################ diff --git a/clang/lib/Driver/ToolChains/Clang.cpp b/clang/lib/Driver/ToolChains/Clang.cpp index 0786298ba918..1abe8fe07772 100644 --- a/clang/lib/Driver/ToolChains/Clang.cpp +++ b/clang/lib/Driver/ToolChains/Clang.cpp @@ -4315,19 +4315,11 @@ static void renderDebugOptions(const ToolChain &TC, const Driver &D, if (EmitCodeView) { CmdArgs.push_back("-gcodeview"); - - // Emit codeview type hashes if requested. - if (Args.hasFlag(options::OPT_gcodeview_ghash, - options::OPT_gno_codeview_ghash, false)) { - CmdArgs.push_back("-gcodeview-ghash"); - } - } - - // Omit inline line tables if requested. - if (Args.hasFlag(options::OPT_gno_inline_line_tables, - options::OPT_ginline_line_tables, false)) { - CmdArgs.push_back("-gno-inline-line-tables"); + Args.addOptInFlag(CmdArgs, options::OPT_gcodeview_ghash, + options::OPT_gno_codeview_ghash); } + Args.addOptOutFlag(CmdArgs, options::OPT_ginline_line_tables, + options::OPT_gno_inline_line_tables); // When emitting remarks, we need at least debug lines in the output. if (willEmitRemarks(Args) && @@ -4382,10 +4374,8 @@ static void renderDebugOptions(const ToolChain &TC, const Driver &D, CmdArgs.push_back(Args.MakeArgString("-gsrc-hash=" + v)); } - if (Args.hasFlag(options::OPT_fdebug_ranges_base_address, - options::OPT_fno_debug_ranges_base_address, false)) { - CmdArgs.push_back("-fdebug-ranges-base-address"); - } + Args.addOptInFlag(CmdArgs, options::OPT_fdebug_ranges_base_address, + options::OPT_fno_debug_ranges_base_address); // -gdwarf-aranges turns on the emission of the aranges section in the // backend. @@ -4398,9 +4388,8 @@ static void renderDebugOptions(const ToolChain &TC, const Driver &D, CmdArgs.push_back("-generate-arange-section"); } - if (Args.hasFlag(options::OPT_fforce_dwarf_frame, - options::OPT_fno_force_dwarf_frame, false)) - CmdArgs.push_back("-fforce-dwarf-frame"); + Args.addOptInFlag(CmdArgs, options::OPT_fforce_dwarf_frame, + options::OPT_fno_force_dwarf_frame); if (Args.hasFlag(options::OPT_fdebug_types_section, options::OPT_fno_debug_types_section, false)) { @@ -5187,9 +5176,8 @@ void Clang::ConstructJob(Compilation &C, const JobAction &JA, options::OPT_fno_merge_all_constants, false)) CmdArgs.push_back("-fmerge-all-constants"); - if (Args.hasFlag(options::OPT_fno_delete_null_pointer_checks, - options::OPT_fdelete_null_pointer_checks, false)) - CmdArgs.push_back("-fno-delete-null-pointer-checks"); + Args.addOptOutFlag(CmdArgs, options::OPT_fdelete_null_pointer_checks, + options::OPT_fno_delete_null_pointer_checks); // LLVM Code Generator Options. @@ -5344,9 +5332,8 @@ void Clang::ConstructJob(Compilation &C, const JobAction &JA, options::OPT_fno_experimental_relative_cxx_abi_vtables); // Handle segmented stacks. - if (Args.hasFlag(options::OPT_fsplit_stack, options::OPT_fno_split_stack, - false)) - CmdArgs.push_back("-fsplit-stack"); + Args.addOptInFlag(CmdArgs, options::OPT_fsplit_stack, + options::OPT_fno_split_stack); // -fprotect-parens=0 is default. if (Args.hasFlag(options::OPT_fprotect_parens, @@ -5825,10 +5812,8 @@ void Clang::ConstructJob(Compilation &C, const JobAction &JA, Args.AddLastArg(CmdArgs, options::OPT_pedantic_errors); Args.AddLastArg(CmdArgs, options::OPT_w); - // Fixed point flags - if (Args.hasFlag(options::OPT_ffixed_point, options::OPT_fno_fixed_point, - /*Default=*/false)) - Args.AddLastArg(CmdArgs, options::OPT_ffixed_point); + Args.addOptInFlag(CmdArgs, options::OPT_ffixed_point, + options::OPT_fno_fixed_point); if (Arg *A = Args.getLastArg(options::OPT_fcxx_abi_EQ)) A->render(Args, CmdArgs); _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits