Lines Matching refs:options

63   if (Arg *A = Args.getLastArg(clang::driver::options::OPT_C, options::OPT_CC,  in CheckPreprocessingOptions()
64 options::OPT_fminimize_whitespace, in CheckPreprocessingOptions()
65 options::OPT_fno_minimize_whitespace)) { in CheckPreprocessingOptions()
66 if (!Args.hasArg(options::OPT_E) && !Args.hasArg(options::OPT__SLASH_P) && in CheckPreprocessingOptions()
67 !Args.hasArg(options::OPT__SLASH_EP) && !D.CCCIsCPP()) { in CheckPreprocessingOptions()
77 if (Args.hasArg(options::OPT_static)) in CheckCodeGenerationOptions()
79 Args.getLastArg(options::OPT_dynamic, options::OPT_mdynamic_no_pic)) in CheckCodeGenerationOptions()
173 Arg *A = Args.getLastArg(options::OPT_mrecip, options::OPT_mrecip_EQ); in ParseMRecip()
277 Arg *A = Args.getLastArg(options::OPT_mprefer_vector_width_EQ); in ParseMPreferVectorWidth()
296 handleTargetFeaturesGroup(Args, Features, options::OPT_m_wasm_Features_Group); in getWebAssemblyTargetFeatures()
412 Args.ClaimAllArgs(options::OPT_fexceptions); in addExceptionArgs()
413 Args.ClaimAllArgs(options::OPT_fno_exceptions); in addExceptionArgs()
414 Args.ClaimAllArgs(options::OPT_fobjc_exceptions); in addExceptionArgs()
415 Args.ClaimAllArgs(options::OPT_fno_objc_exceptions); in addExceptionArgs()
416 Args.ClaimAllArgs(options::OPT_fcxx_exceptions); in addExceptionArgs()
417 Args.ClaimAllArgs(options::OPT_fno_cxx_exceptions); in addExceptionArgs()
418 Args.ClaimAllArgs(options::OPT_fasync_exceptions); in addExceptionArgs()
419 Args.ClaimAllArgs(options::OPT_fno_async_exceptions); in addExceptionArgs()
424 bool EH = Args.hasFlag(options::OPT_fexceptions, options::OPT_fno_exceptions, in addExceptionArgs()
427 bool EHa = Args.hasFlag(options::OPT_fasync_exceptions, in addExceptionArgs()
428 options::OPT_fno_async_exceptions, false); in addExceptionArgs()
437 Args.hasFlag(options::OPT_fobjc_exceptions, in addExceptionArgs()
438 options::OPT_fno_objc_exceptions, true)) { in addExceptionArgs()
449 options::OPT_fcxx_exceptions, options::OPT_fno_cxx_exceptions, in addExceptionArgs()
450 options::OPT_fexceptions, options::OPT_fno_exceptions); in addExceptionArgs()
453 ExceptionArg->getOption().matches(options::OPT_fcxx_exceptions) || in addExceptionArgs()
454 ExceptionArg->getOption().matches(options::OPT_fexceptions); in addExceptionArgs()
466 Args.AddLastArg(CmdArgs, options::OPT_fignore_exceptions); in addExceptionArgs()
485 return Args.hasFlag(options::OPT_fautolink, options::OPT_fno_autolink, in ShouldEnableAutolink()
492 assert(A.getOption().matches(options::OPT_gN_Group) && in DebugLevelToInfoKind()
494 if (A.getOption().matches(options::OPT_g0) || in DebugLevelToInfoKind()
495 A.getOption().matches(options::OPT_ggdb0)) in DebugLevelToInfoKind()
497 if (A.getOption().matches(options::OPT_gline_tables_only) || in DebugLevelToInfoKind()
498 A.getOption().matches(options::OPT_ggdb1)) in DebugLevelToInfoKind()
500 if (A.getOption().matches(options::OPT_gline_directives_only)) in DebugLevelToInfoKind()
519 if (Args.hasArg(options::OPT_pg) && !Args.hasArg(options::OPT_mfentry)) in useFramePointerForTargetByDefault()
604 Arg *A = Args.getLastArg(options::OPT_fomit_frame_pointer, in getFramePointerKind()
605 options::OPT_fno_omit_frame_pointer); in getFramePointerKind()
606 bool OmitFP = A && A->getOption().matches(options::OPT_fomit_frame_pointer); in getFramePointerKind()
608 A && A->getOption().matches(options::OPT_fno_omit_frame_pointer); in getFramePointerKind()
610 Args.hasFlag(options::OPT_momit_leaf_frame_pointer, in getFramePointerKind()
611 options::OPT_mno_omit_leaf_frame_pointer, in getFramePointerKind()
626 if (Arg *A = Args.getLastArg(options::OPT_ffile_compilation_dir_EQ, in addDebugCompDirArg()
627 options::OPT_fdebug_compilation_dir_EQ)) { in addDebugCompDirArg()
628 if (A->getOption().matches(options::OPT_ffile_compilation_dir_EQ)) in addDebugCompDirArg()
645 for (auto *Arg : Args.filtered(options::OPT_Xclang)) in addDebugObjectName()
649 if (Args.hasArg(options::OPT_object_file_name_EQ)) in addDebugObjectName()
674 for (const Arg *A : Args.filtered(options::OPT_ffile_prefix_map_EQ, in addDebugPrefixMapArg()
675 options::OPT_fdebug_prefix_map_EQ)) { in addDebugPrefixMapArg()
688 for (const Arg *A : Args.filtered(options::OPT_ffile_prefix_map_EQ, in addMacroPrefixMapArg()
689 options::OPT_fmacro_prefix_map_EQ)) { in addMacroPrefixMapArg()
703 for (const Arg *A : Args.filtered(options::OPT_ffile_prefix_map_EQ, in addCoveragePrefixMapArg()
704 options::OPT_fcoverage_prefix_map_EQ)) { in addCoveragePrefixMapArg()
719 if (Arg *A = Args.getLastArg(options::OPT_O_Group)) { in shouldEnableVectorizerAtOLevel()
720 if (A->getOption().matches(options::OPT_O4) || in shouldEnableVectorizerAtOLevel()
721 A->getOption().matches(options::OPT_Ofast)) in shouldEnableVectorizerAtOLevel()
724 if (A->getOption().matches(options::OPT_O0)) in shouldEnableVectorizerAtOLevel()
727 assert(A->getOption().matches(options::OPT_O) && "Must have a -O flag"); in shouldEnableVectorizerAtOLevel()
753 if (Args.hasArg(options::OPT_verify_pch) && Input.getType() == types::TY_PCH) in addDashXForInput()
757 if (Args.hasArg(options::OPT_rewrite_objc)) in addDashXForInput()
784 auto *PGOGenerateArg = Args.getLastArg(options::OPT_fprofile_generate, in addPGOAndCoverageFlags()
785 options::OPT_fprofile_generate_EQ, in addPGOAndCoverageFlags()
786 options::OPT_fno_profile_generate); in addPGOAndCoverageFlags()
788 PGOGenerateArg->getOption().matches(options::OPT_fno_profile_generate)) in addPGOAndCoverageFlags()
791 auto *CSPGOGenerateArg = Args.getLastArg(options::OPT_fcs_profile_generate, in addPGOAndCoverageFlags()
792 options::OPT_fcs_profile_generate_EQ, in addPGOAndCoverageFlags()
793 options::OPT_fno_profile_generate); in addPGOAndCoverageFlags()
795 CSPGOGenerateArg->getOption().matches(options::OPT_fno_profile_generate)) in addPGOAndCoverageFlags()
799 options::OPT_fprofile_instr_generate, in addPGOAndCoverageFlags()
800 options::OPT_fprofile_instr_generate_EQ, in addPGOAndCoverageFlags()
801 options::OPT_fno_profile_instr_generate); in addPGOAndCoverageFlags()
804 options::OPT_fno_profile_instr_generate)) in addPGOAndCoverageFlags()
838 options::OPT_fprofile_instr_generate_EQ)) in addPGOAndCoverageFlags()
868 PGOGenerateArg ? options::OPT_fprofile_generate_EQ in addPGOAndCoverageFlags()
869 : options::OPT_fcs_profile_generate_EQ)) { in addPGOAndCoverageFlags()
878 if (ProfileUseArg->getOption().matches(options::OPT_fprofile_instr_use_EQ)) in addPGOAndCoverageFlags()
882 options::OPT_fprofile_use_EQ) || in addPGOAndCoverageFlags()
884 options::OPT_fprofile_instr_use))) { in addPGOAndCoverageFlags()
894 bool EmitCovNotes = Args.hasFlag(options::OPT_ftest_coverage, in addPGOAndCoverageFlags()
895 options::OPT_fno_test_coverage, false) || in addPGOAndCoverageFlags()
896 Args.hasArg(options::OPT_coverage); in addPGOAndCoverageFlags()
903 if (Args.hasFlag(options::OPT_fcoverage_mapping, in addPGOAndCoverageFlags()
904 options::OPT_fno_coverage_mapping, false)) { in addPGOAndCoverageFlags()
913 if (Arg *A = Args.getLastArg(options::OPT_ffile_compilation_dir_EQ, in addPGOAndCoverageFlags()
914 options::OPT_fcoverage_compilation_dir_EQ)) { in addPGOAndCoverageFlags()
915 if (A->getOption().matches(options::OPT_ffile_compilation_dir_EQ)) in addPGOAndCoverageFlags()
925 if (Args.hasArg(options::OPT_fprofile_exclude_files_EQ)) { in addPGOAndCoverageFlags()
926 auto *Arg = Args.getLastArg(options::OPT_fprofile_exclude_files_EQ); in addPGOAndCoverageFlags()
927 if (!Args.hasArg(options::OPT_coverage)) in addPGOAndCoverageFlags()
937 if (Args.hasArg(options::OPT_fprofile_filter_files_EQ)) { in addPGOAndCoverageFlags()
938 auto *Arg = Args.getLastArg(options::OPT_fprofile_filter_files_EQ); in addPGOAndCoverageFlags()
939 if (!Args.hasArg(options::OPT_coverage)) in addPGOAndCoverageFlags()
948 if (const auto *A = Args.getLastArg(options::OPT_fprofile_update_EQ)) { in addPGOAndCoverageFlags()
961 if (const auto *A = Args.getLastArg(options::OPT_fprofile_function_groups)) { in addPGOAndCoverageFlags()
967 Args.getLastArg(options::OPT_fprofile_selected_function_group)) { in addPGOAndCoverageFlags()
985 if (Args.hasArg(options::OPT_fprofile_arcs) || in addPGOAndCoverageFlags()
986 Args.hasArg(options::OPT_coverage)) in addPGOAndCoverageFlags()
987 FProfileDir = Args.getLastArg(options::OPT_fprofile_dir); in addPGOAndCoverageFlags()
994 if ((Args.hasArg(options::OPT_c) || Args.hasArg(options::OPT_S)) && in addPGOAndCoverageFlags()
997 if (Arg *FinalOutput = C.getArgs().getLastArg(options::OPT__SLASH_Fo)) in addPGOAndCoverageFlags()
999 else if (Arg *FinalOutput = C.getArgs().getLastArg(options::OPT_o)) in addPGOAndCoverageFlags()
1036 if (Arg *A = Args.getLastArg(options::OPT_O_Group)) in UseRelaxAll()
1037 RelaxDefault = A->getOption().matches(options::OPT_O0); in UseRelaxAll()
1049 return Args.hasFlag(options::OPT_mrelax_all, options::OPT_mno_relax_all, in UseRelaxAll()
1068 return Args.getLastArg(options::OPT_gdwarf_2, options::OPT_gdwarf_3, in getDwarfNArg()
1069 options::OPT_gdwarf_4, options::OPT_gdwarf_5, in getDwarfNArg()
1070 options::OPT_gdwarf); in getDwarfNArg()
1134 const Arg *A = Args.getLastArg(options::OPT_gz_EQ); in RenderDebugInfoCompressionArgs()
1204 Args.AddLastArg(CmdArgs, options::OPT_C); in AddPreprocessingOptions()
1205 Args.AddLastArg(CmdArgs, options::OPT_CC); in AddPreprocessingOptions()
1208 Arg *ArgM = Args.getLastArg(options::OPT_MM); in AddPreprocessingOptions()
1210 ArgM = Args.getLastArg(options::OPT_M); in AddPreprocessingOptions()
1211 Arg *ArgMD = Args.getLastArg(options::OPT_MMD); in AddPreprocessingOptions()
1213 ArgMD = Args.getLastArg(options::OPT_MD); in AddPreprocessingOptions()
1224 if (Arg *MF = Args.getLastArg(options::OPT_MF)) { in AddPreprocessingOptions()
1239 for (const Arg *A : Args.filtered(options::OPT_MT, options::OPT_MQ)) { in AddPreprocessingOptions()
1242 if (A->getOption().matches(options::OPT_MT)) { in AddPreprocessingOptions()
1258 Arg *OutputOpt = Args.getLastArg(options::OPT_o); in AddPreprocessingOptions()
1276 if (ArgM->getOption().matches(options::OPT_M) || in AddPreprocessingOptions()
1277 ArgM->getOption().matches(options::OPT_MD)) in AddPreprocessingOptions()
1280 !Args.hasArg(options::OPT_fno_module_file_deps)) || in AddPreprocessingOptions()
1281 Args.hasArg(options::OPT_fmodule_file_deps)) in AddPreprocessingOptions()
1285 if (Args.hasArg(options::OPT_MG)) { in AddPreprocessingOptions()
1286 if (!ArgM || ArgM->getOption().matches(options::OPT_MD) || in AddPreprocessingOptions()
1287 ArgM->getOption().matches(options::OPT_MMD)) in AddPreprocessingOptions()
1292 Args.AddLastArg(CmdArgs, options::OPT_MP); in AddPreprocessingOptions()
1293 Args.AddLastArg(CmdArgs, options::OPT_MV); in AddPreprocessingOptions()
1307 !Args.hasArg(options::OPT_nostdinc) && in AddPreprocessingOptions()
1310 if (!Args.hasArg(options::OPT_nobuiltininc)) { in AddPreprocessingOptions()
1331 const Arg *YcArg = Args.getLastArg(options::OPT__SLASH_Yc); in AddPreprocessingOptions()
1332 const Arg *YuArg = Args.getLastArg(options::OPT__SLASH_Yu); in AddPreprocessingOptions()
1338 if (Args.hasFlag(options::OPT_fpch_instantiate_templates, in AddPreprocessingOptions()
1339 options::OPT_fno_pch_instantiate_templates, true)) in AddPreprocessingOptions()
1363 for (const Arg *A : Args.filtered(options::OPT_clang_i_Group)) { in AddPreprocessingOptions()
1364 if (A->getOption().matches(options::OPT_include) && in AddPreprocessingOptions()
1398 } else if (A->getOption().matches(options::OPT_isystem_after)) { in AddPreprocessingOptions()
1405 } else if (A->getOption().matches(options::OPT_stdlibxx_isystem)) { in AddPreprocessingOptions()
1416 {options::OPT_D, options::OPT_U, options::OPT_I_Group, in AddPreprocessingOptions()
1417 options::OPT_F, options::OPT_index_header_map}); in AddPreprocessingOptions()
1425 Args.AddAllArgValues(CmdArgs, options::OPT_Wp_COMMA, in AddPreprocessingOptions()
1426 options::OPT_Xpreprocessor); in AddPreprocessingOptions()
1429 if (Arg *A = Args.getLastArg(options::OPT_I_)) in AddPreprocessingOptions()
1436 if (!Args.hasArg(options::OPT_isysroot)) { in AddPreprocessingOptions()
1463 bool HasStdlibxxIsystem = Args.hasArg(options::OPT_stdlibxx_isystem); in AddPreprocessingOptions()
1486 Args.AddLastArg(CmdArgs, options::OPT_ffile_reproducible, in AddPreprocessingOptions()
1487 options::OPT_fno_file_reproducible); in AddPreprocessingOptions()
1532 return Args.getAllArgValues(options::OPT_arch).size() > 1; in hasMultipleInvocations()
1542 Args.getLastArg(options::OPT_foptimization_record_file_EQ); in checkRemarksOptions()
1556 if (const Arg *A = Args.getLastArg(options::OPT_fsave_optimization_record_EQ)) in renderRemarksOptions()
1561 const Arg *A = Args.getLastArg(options::OPT_foptimization_record_file_EQ); in renderRemarksOptions()
1567 Args.getAllArgValues(options::OPT_arch).size() > 1; in renderRemarksOptions()
1571 if (Args.hasArg(options::OPT_c) || Args.hasArg(options::OPT_S)) { in renderRemarksOptions()
1572 if (Arg *FinalOutput = Args.getLastArg(options::OPT_o)) in renderRemarksOptions()
1623 Args.getLastArg(options::OPT_foptimization_record_passes_EQ)) { in renderRemarksOptions()
1635 if (!Args.hasFlag(options::OPT_faapcs_bitfield_width, in AddAAPCSVolatileBitfieldArgs()
1636 options::OPT_fno_aapcs_bitfield_width, true)) in AddAAPCSVolatileBitfieldArgs()
1639 if (Args.getLastArg(options::OPT_ForceAAPCSBitfieldLoad)) in AddAAPCSVolatileBitfieldArgs()
1650 if (Arg *A = Args.getLastArg(options::OPT_mabi_EQ)) { in RenderARMABI()
1675 ? Args.getLastArg(options::OPT_msign_return_address_EQ, in CollectARMPACBTIOptions()
1676 options::OPT_mbranch_protection_EQ) in CollectARMPACBTIOptions()
1677 : Args.getLastArg(options::OPT_mbranch_protection_EQ); in CollectARMPACBTIOptions()
1690 if (A->getOption().matches(options::OPT_msign_return_address_EQ)) { in CollectARMPACBTIOptions()
1744 if (Arg *A = Args.getLastArg(options::OPT_mglobal_merge, in AddARMTargetArgs()
1745 options::OPT_mno_global_merge)) { in AddARMTargetArgs()
1747 if (A->getOption().matches(options::OPT_mno_global_merge)) in AddARMTargetArgs()
1753 if (!Args.hasFlag(options::OPT_mimplicit_float, in AddARMTargetArgs()
1754 options::OPT_mno_implicit_float, true)) in AddARMTargetArgs()
1757 if (Args.getLastArg(options::OPT_mcmse)) in AddARMTargetArgs()
1854 if (Arg *A = Args.getLastArg(options::OPT_mabi_EQ)) in RenderAArch64ABI()
1870 if (!Args.hasFlag(options::OPT_mred_zone, options::OPT_mno_red_zone, true) || in AddAArch64TargetArgs()
1871 Args.hasArg(options::OPT_mkernel) || in AddAArch64TargetArgs()
1872 Args.hasArg(options::OPT_fapple_kext)) in AddAArch64TargetArgs()
1875 if (!Args.hasFlag(options::OPT_mimplicit_float, in AddAArch64TargetArgs()
1876 options::OPT_mno_implicit_float, true)) in AddAArch64TargetArgs()
1882 if (Arg *A = Args.getLastArg(options::OPT_mglobal_merge, in AddAArch64TargetArgs()
1883 options::OPT_mno_global_merge)) { in AddAArch64TargetArgs()
1885 if (A->getOption().matches(options::OPT_mno_global_merge)) in AddAArch64TargetArgs()
1895 if (Arg *A = Args.getLastArg(options::OPT_msve_vector_bits_EQ)) { in AddAArch64TargetArgs()
1925 if (const Arg *A = Args.getLastArg(clang::driver::options::OPT_mtune_EQ)) { in AddAArch64TargetArgs()
1960 if (Arg *A = Args.getLastArg(options::OPT_mldc1_sdc1, in AddMIPSTargetArgs()
1961 options::OPT_mno_ldc1_sdc1)) { in AddMIPSTargetArgs()
1962 if (A->getOption().matches(options::OPT_mno_ldc1_sdc1)) { in AddMIPSTargetArgs()
1968 if (Arg *A = Args.getLastArg(options::OPT_mcheck_zero_division, in AddMIPSTargetArgs()
1969 options::OPT_mno_check_zero_division)) { in AddMIPSTargetArgs()
1970 if (A->getOption().matches(options::OPT_mno_check_zero_division)) { in AddMIPSTargetArgs()
1976 if (Args.getLastArg(options::OPT_mfix4300)) { in AddMIPSTargetArgs()
1981 if (Arg *A = Args.getLastArg(options::OPT_G)) { in AddMIPSTargetArgs()
1988 Arg *GPOpt = Args.getLastArg(options::OPT_mgpopt, options::OPT_mno_gpopt); in AddMIPSTargetArgs()
1990 Args.getLastArg(options::OPT_mabicalls, options::OPT_mno_abicalls); in AddMIPSTargetArgs()
2003 ABICalls && ABICalls->getOption().matches(options::OPT_mno_abicalls); in AddMIPSTargetArgs()
2014 bool WantGPOpt = GPOpt && GPOpt->getOption().matches(options::OPT_mgpopt); in AddMIPSTargetArgs()
2020 Arg *LocalSData = Args.getLastArg(options::OPT_mlocal_sdata, in AddMIPSTargetArgs()
2021 options::OPT_mno_local_sdata); in AddMIPSTargetArgs()
2022 Arg *ExternSData = Args.getLastArg(options::OPT_mextern_sdata, in AddMIPSTargetArgs()
2023 options::OPT_mno_extern_sdata); in AddMIPSTargetArgs()
2024 Arg *EmbeddedData = Args.getLastArg(options::OPT_membedded_data, in AddMIPSTargetArgs()
2025 options::OPT_mno_embedded_data); in AddMIPSTargetArgs()
2028 if (LocalSData->getOption().matches(options::OPT_mlocal_sdata)) { in AddMIPSTargetArgs()
2038 if (ExternSData->getOption().matches(options::OPT_mextern_sdata)) { in AddMIPSTargetArgs()
2048 if (EmbeddedData->getOption().matches(options::OPT_membedded_data)) { in AddMIPSTargetArgs()
2062 if (Arg *A = Args.getLastArg(options::OPT_mcompact_branches_EQ)) { in AddMIPSTargetArgs()
2075 if (Arg *A = Args.getLastArg(options::OPT_mrelax_pic_calls, in AddMIPSTargetArgs()
2076 options::OPT_mno_relax_pic_calls)) { in AddMIPSTargetArgs()
2077 if (A->getOption().matches(options::OPT_mno_relax_pic_calls)) { in AddMIPSTargetArgs()
2108 for (const Arg *A : Args.filtered(options::OPT_mabi_EQ)) { in AddPPCTargetArgs()
2151 if (Args.getLastArg(options::OPT_shared, options::OPT_fpic, in SetRISCVSmallDataLimit()
2152 options::OPT_fPIC)) { in SetRISCVSmallDataLimit()
2155 if (Args.hasArg(options::OPT_G)) { in SetRISCVSmallDataLimit()
2158 } else if (Args.getLastArgValue(options::OPT_mcmodel_EQ) in SetRISCVSmallDataLimit()
2163 if (Args.hasArg(options::OPT_G)) { in SetRISCVSmallDataLimit()
2166 } else if (Arg *A = Args.getLastArg(options::OPT_G)) { in SetRISCVSmallDataLimit()
2184 if (const Arg *A = Args.getLastArg(options::OPT_mtune_EQ)) { in AddRISCVTargetArgs()
2209 if (const Arg *A = Args.getLastArg(clang::driver::options::OPT_mtune_EQ)) { in AddSparcTargetArgs()
2224 if (const Arg *A = Args.getLastArg(options::OPT_mtune_EQ)) { in AddSystemZTargetArgs()
2233 Args.hasFlag(options::OPT_mbackchain, options::OPT_mno_backchain, false); in AddSystemZTargetArgs()
2234 bool HasPackedStack = Args.hasFlag(options::OPT_mpacked_stack, in AddSystemZTargetArgs()
2235 options::OPT_mno_packed_stack, false); in AddSystemZTargetArgs()
2261 if (!Args.hasFlag(options::OPT_mred_zone, options::OPT_mno_red_zone, true) || in AddX86TargetArgs()
2262 Args.hasArg(options::OPT_mkernel) || in AddX86TargetArgs()
2263 Args.hasArg(options::OPT_fapple_kext)) in AddX86TargetArgs()
2266 if (!Args.hasFlag(options::OPT_mtls_direct_seg_refs, in AddX86TargetArgs()
2267 options::OPT_mno_tls_direct_seg_refs, true)) in AddX86TargetArgs()
2272 bool NoImplicitFloat = (Args.hasArg(options::OPT_mkernel) || in AddX86TargetArgs()
2273 Args.hasArg(options::OPT_fapple_kext)); in AddX86TargetArgs()
2275 options::OPT_msoft_float, options::OPT_mno_soft_float, in AddX86TargetArgs()
2276 options::OPT_mimplicit_float, options::OPT_mno_implicit_float)) { in AddX86TargetArgs()
2278 NoImplicitFloat = (O.matches(options::OPT_mno_implicit_float) || in AddX86TargetArgs()
2279 O.matches(options::OPT_msoft_float)); in AddX86TargetArgs()
2284 if (Arg *A = Args.getLastArg(options::OPT_masm_EQ)) { in AddX86TargetArgs()
2299 if (Arg *A = Args.getLastArg(options::OPT_mskip_rax_setup, in AddX86TargetArgs()
2300 options::OPT_mno_skip_rax_setup)) in AddX86TargetArgs()
2301 if (A->getOption().matches(options::OPT_mskip_rax_setup)) in AddX86TargetArgs()
2305 if (Args.hasFlag(options::OPT_miamcu, options::OPT_mno_iamcu, false)) { in AddX86TargetArgs()
2315 if (!Args.hasArg(clang::driver::options::OPT_march_EQ) && in AddX86TargetArgs()
2320 if (const Arg *A = Args.getLastArg(clang::driver::options::OPT_mtune_EQ)) { in AddX86TargetArgs()
2348 if (!Args.hasArg(options::OPT_fno_short_enums)) in AddHexagonTargetArgs()
2350 if (Args.getLastArg(options::OPT_mieee_rnd_near)) { in AddHexagonTargetArgs()
2360 if (Arg *A = Args.getLastArg(options::OPT_mcpu_EQ)) { in AddLanaiTargetArgs()
2366 if (Arg *A = Args.getLastArg(options::OPT_mregparm_EQ)) { in AddLanaiTargetArgs()
2384 if (!Args.hasArg(options::OPT_fvisibility_EQ, in AddWebAssemblyTargetArgs()
2385 options::OPT_fvisibility_ms_compat)) { in AddWebAssemblyTargetArgs()
2401 if (C.getArgs().hasArg(options::OPT__HASH_HASH_HASH)) in DumpCompilationDatabase()
2431 if (!D.SysRoot.empty() && !Args.hasArg(options::OPT__sysroot_EQ)) { in DumpCompilationDatabase()
2441 if (O.getID() == options::OPT_x) in DumpCompilationDatabase()
2444 if (O.getGroup().isValid() && O.getGroup().getID() == options::OPT_M_Group) in DumpCompilationDatabase()
2446 if (O.getID() == options::OPT_gen_cdb_fragment_path) in DumpCompilationDatabase()
2452 if (O.getID() == options::OPT_o) in DumpCompilationDatabase()
2469 if (C.getArgs().hasArg(options::OPT__HASH_HASH_HASH)) in DumpCompilationDatabaseFragmentToDir()
2522 if (Args.hasFlag(options::OPT_mincremental_linker_compatible, in CollectArgsForIntegratedAssembler()
2523 options::OPT_mno_incremental_linker_compatible, in CollectArgsForIntegratedAssembler()
2527 Args.AddLastArg(CmdArgs, options::OPT_femit_dwarf_unwind_EQ); in CollectArgsForIntegratedAssembler()
2544 Args.filtered(options::OPT_Wa_COMMA, options::OPT_Xassembler, in CollectArgsForIntegratedAssembler()
2545 options::OPT_mimplicit_it_EQ)) { in CollectArgsForIntegratedAssembler()
2548 if (A->getOption().getID() == options::OPT_mimplicit_it_EQ) { in CollectArgsForIntegratedAssembler()
2732 Args.AddLastArg(CmdArgs, options::OPT_fembed_bitcode_EQ); in CollectArgsForIntegratedAssembler()
2778 if (const Arg *A = Args.getLastArg(options::OPT_flimited_precision_EQ)) { in RenderFloatingPointOptions()
2789 case options::OPT_ffp_model_EQ: { in RenderFloatingPointOptions()
2824 optID = options::OPT_ffast_math; in RenderFloatingPointOptions()
2828 optID = options::OPT_ffp_contract; in RenderFloatingPointOptions()
2834 optID = options::OPT_frounding_math; in RenderFloatingPointOptions()
2851 case options::OPT_fhonor_infinities: HonorINFs = true; break; in RenderFloatingPointOptions()
2852 case options::OPT_fno_honor_infinities: HonorINFs = false; break; in RenderFloatingPointOptions()
2853 case options::OPT_fhonor_nans: HonorNaNs = true; break; in RenderFloatingPointOptions()
2854 case options::OPT_fno_honor_nans: HonorNaNs = false; break; in RenderFloatingPointOptions()
2855 case options::OPT_fapprox_func: ApproxFunc = true; break; in RenderFloatingPointOptions()
2856 case options::OPT_fno_approx_func: ApproxFunc = false; break; in RenderFloatingPointOptions()
2857 case options::OPT_fmath_errno: MathErrno = true; break; in RenderFloatingPointOptions()
2858 case options::OPT_fno_math_errno: MathErrno = false; break; in RenderFloatingPointOptions()
2859 case options::OPT_fassociative_math: AssociativeMath = true; break; in RenderFloatingPointOptions()
2860 case options::OPT_fno_associative_math: AssociativeMath = false; break; in RenderFloatingPointOptions()
2861 case options::OPT_freciprocal_math: ReciprocalMath = true; break; in RenderFloatingPointOptions()
2862 case options::OPT_fno_reciprocal_math: ReciprocalMath = false; break; in RenderFloatingPointOptions()
2863 case options::OPT_fsigned_zeros: SignedZeros = true; break; in RenderFloatingPointOptions()
2864 case options::OPT_fno_signed_zeros: SignedZeros = false; break; in RenderFloatingPointOptions()
2865 case options::OPT_ftrapping_math: in RenderFloatingPointOptions()
2876 case options::OPT_fno_trapping_math: in RenderFloatingPointOptions()
2888 case options::OPT_frounding_math: in RenderFloatingPointOptions()
2893 case options::OPT_fno_rounding_math: in RenderFloatingPointOptions()
2898 case options::OPT_fdenormal_fp_math_EQ: in RenderFloatingPointOptions()
2907 case options::OPT_fdenormal_fp_math_f32_EQ: in RenderFloatingPointOptions()
2916 case options::OPT_ffp_contract: { in RenderFloatingPointOptions()
2932 case options::OPT_ffp_model_EQ: in RenderFloatingPointOptions()
2939 case options::OPT_ffp_exception_behavior_EQ: { in RenderFloatingPointOptions()
2960 case options::OPT_ffp_eval_method_EQ: { in RenderFloatingPointOptions()
2971 case options::OPT_ffinite_math_only: in RenderFloatingPointOptions()
2975 case options::OPT_fno_finite_math_only: in RenderFloatingPointOptions()
2980 case options::OPT_funsafe_math_optimizations: in RenderFloatingPointOptions()
2988 case options::OPT_fno_unsafe_math_optimizations: in RenderFloatingPointOptions()
3001 case options::OPT_Ofast: in RenderFloatingPointOptions()
3006 case options::OPT_ffast_math: in RenderFloatingPointOptions()
3019 case options::OPT_fno_fast_math: in RenderFloatingPointOptions()
3155 if (const Arg *A = Args.getLastArg(options::OPT_mfpmath_EQ)) { in RenderFloatingPointOptions()
3161 if (Args.hasFlag(options::OPT_fno_strict_float_cast_overflow, in RenderFloatingPointOptions()
3162 options::OPT_fstrict_float_cast_overflow, false)) in RenderFloatingPointOptions()
3170 if (!Args.hasArg(options::OPT__analyzer_no_default_checks)) { in RenderAnalyzerOptions()
3221 if (Arg *A = Args.getLastArg(options::OPT__analyzer_output)) in RenderAnalyzerOptions()
3232 Args.AddAllArgValues(CmdArgs, options::OPT_Xanalyzer); in RenderAnalyzerOptions()
3260 if (Arg *A = Args.getLastArg(options::OPT_fno_stack_protector, in RenderSSPOptions()
3261 options::OPT_fstack_protector_all, in RenderSSPOptions()
3262 options::OPT_fstack_protector_strong, in RenderSSPOptions()
3263 options::OPT_fstack_protector)) { in RenderSSPOptions()
3264 if (A->getOption().matches(options::OPT_fstack_protector)) in RenderSSPOptions()
3267 else if (A->getOption().matches(options::OPT_fstack_protector_strong)) in RenderSSPOptions()
3269 else if (A->getOption().matches(options::OPT_fstack_protector_all)) in RenderSSPOptions()
3281 for (const Arg *A : Args.filtered(options::OPT__param)) { in RenderSSPOptions()
3294 if (Arg *A = Args.getLastArg(options::OPT_mstack_protector_guard_EQ)) { in RenderSSPOptions()
3309 if (!Args.hasArg(options::OPT_mstack_protector_guard_offset_EQ)) { in RenderSSPOptions()
3321 if (Arg *A = Args.getLastArg(options::OPT_mtp_mode_EQ)) { in RenderSSPOptions()
3340 if (Arg *A = Args.getLastArg(options::OPT_mstack_protector_guard_offset_EQ)) { in RenderSSPOptions()
3360 if (Arg *A = Args.getLastArg(options::OPT_mstack_protector_guard_reg_EQ)) { in RenderSSPOptions()
3377 if (Arg *A = Args.getLastArg(options::OPT_mstack_protector_guard_symbol_EQ)) { in RenderSSPOptions()
3399 Args.addOptInFlag(CmdArgs, options::OPT_fstack_clash_protection, in RenderSCPOptions()
3400 options::OPT_fno_stack_clash_protection); in RenderSCPOptions()
3414 case options::OPT_ftrivial_auto_var_init: { in RenderTrivialAutoVarInitOptions()
3440 if (TrivialAutoVarInit == "zero" && !Args.hasArg(options::OPT_enable_trivial_var_init_zero)) in RenderTrivialAutoVarInitOptions()
3447 Args.getLastArg(options::OPT_ftrivial_auto_var_init_stop_after)) { in RenderTrivialAutoVarInitOptions()
3448 if (!Args.hasArg(options::OPT_ftrivial_auto_var_init) || in RenderTrivialAutoVarInitOptions()
3450 Args.getLastArg(options::OPT_ftrivial_auto_var_init)->getValue()) == in RenderTrivialAutoVarInitOptions()
3467 options::OPT_cl_opt_disable, in RenderOpenCLOptions()
3468 options::OPT_cl_strict_aliasing, in RenderOpenCLOptions()
3469 options::OPT_cl_single_precision_constant, in RenderOpenCLOptions()
3470 options::OPT_cl_finite_math_only, in RenderOpenCLOptions()
3471 options::OPT_cl_kernel_arg_info, in RenderOpenCLOptions()
3472 options::OPT_cl_unsafe_math_optimizations, in RenderOpenCLOptions()
3473 options::OPT_cl_fast_relaxed_math, in RenderOpenCLOptions()
3474 options::OPT_cl_mad_enable, in RenderOpenCLOptions()
3475 options::OPT_cl_no_signed_zeros, in RenderOpenCLOptions()
3476 options::OPT_cl_fp32_correctly_rounded_divide_sqrt, in RenderOpenCLOptions()
3477 options::OPT_cl_uniform_work_group_size in RenderOpenCLOptions()
3480 if (Arg *A = Args.getLastArg(options::OPT_cl_std_EQ)) { in RenderOpenCLOptions()
3483 } else if (Arg *A = Args.getLastArg(options::OPT_cl_ext_EQ)) { in RenderOpenCLOptions()
3494 (Args.hasArg(options::OPT_cl_std_EQ) && types::isSrcFile(InputType))) && in RenderOpenCLOptions()
3495 !Args.hasArg(options::OPT_cl_no_stdinc)) { in RenderOpenCLOptions()
3503 const unsigned ForwardedArguments[] = {options::OPT_dxil_validator_version, in RenderHLSLOptions()
3504 options::OPT_D, in RenderHLSLOptions()
3505 options::OPT_I, in RenderHLSLOptions()
3506 options::OPT_S, in RenderHLSLOptions()
3507 options::OPT_emit_llvm, in RenderHLSLOptions()
3508 options::OPT_disable_llvm_passes, in RenderHLSLOptions()
3509 options::OPT_fnative_half_type}; in RenderHLSLOptions()
3515 if (!Args.hasArg(options::OPT_dxc_no_stdinc)) in RenderHLSLOptions()
3523 if (!Args.hasArg(options::OPT_fno_objc_arc, options::OPT_fobjc_arc)) { in RenderARCMigrateToolOptions()
3524 if (const Arg *A = Args.getLastArg(options::OPT_ccc_arcmt_check, in RenderARCMigrateToolOptions()
3525 options::OPT_ccc_arcmt_modify, in RenderARCMigrateToolOptions()
3526 options::OPT_ccc_arcmt_migrate)) { in RenderARCMigrateToolOptions()
3530 case options::OPT_ccc_arcmt_check: in RenderARCMigrateToolOptions()
3533 case options::OPT_ccc_arcmt_modify: in RenderARCMigrateToolOptions()
3536 case options::OPT_ccc_arcmt_migrate: in RenderARCMigrateToolOptions()
3541 Args.AddLastArg(CmdArgs, options::OPT_arcmt_migrate_report_output); in RenderARCMigrateToolOptions()
3542 Args.AddLastArg(CmdArgs, options::OPT_arcmt_migrate_emit_arc_errors); in RenderARCMigrateToolOptions()
3547 Args.ClaimAllArgs(options::OPT_ccc_arcmt_check); in RenderARCMigrateToolOptions()
3548 Args.ClaimAllArgs(options::OPT_ccc_arcmt_modify); in RenderARCMigrateToolOptions()
3549 Args.ClaimAllArgs(options::OPT_ccc_arcmt_migrate); in RenderARCMigrateToolOptions()
3552 if (const Arg *A = Args.getLastArg(options::OPT_ccc_objcmt_migrate)) { in RenderARCMigrateToolOptions()
3560 if (!Args.hasArg(options::OPT_objcmt_migrate_literals, in RenderARCMigrateToolOptions()
3561 options::OPT_objcmt_migrate_subscripting, in RenderARCMigrateToolOptions()
3562 options::OPT_objcmt_migrate_property)) { in RenderARCMigrateToolOptions()
3568 Args.AddLastArg(CmdArgs, options::OPT_objcmt_migrate_literals); in RenderARCMigrateToolOptions()
3569 Args.AddLastArg(CmdArgs, options::OPT_objcmt_migrate_subscripting); in RenderARCMigrateToolOptions()
3570 Args.AddLastArg(CmdArgs, options::OPT_objcmt_migrate_property); in RenderARCMigrateToolOptions()
3573 Args.AddLastArg(CmdArgs, options::OPT_objcmt_migrate_literals); in RenderARCMigrateToolOptions()
3574 Args.AddLastArg(CmdArgs, options::OPT_objcmt_migrate_subscripting); in RenderARCMigrateToolOptions()
3575 Args.AddLastArg(CmdArgs, options::OPT_objcmt_migrate_property); in RenderARCMigrateToolOptions()
3576 Args.AddLastArg(CmdArgs, options::OPT_objcmt_migrate_all); in RenderARCMigrateToolOptions()
3577 Args.AddLastArg(CmdArgs, options::OPT_objcmt_migrate_readonly_property); in RenderARCMigrateToolOptions()
3578 Args.AddLastArg(CmdArgs, options::OPT_objcmt_migrate_readwrite_property); in RenderARCMigrateToolOptions()
3579 Args.AddLastArg(CmdArgs, options::OPT_objcmt_migrate_property_dot_syntax); in RenderARCMigrateToolOptions()
3580 Args.AddLastArg(CmdArgs, options::OPT_objcmt_migrate_annotation); in RenderARCMigrateToolOptions()
3581 Args.AddLastArg(CmdArgs, options::OPT_objcmt_migrate_instancetype); in RenderARCMigrateToolOptions()
3582 Args.AddLastArg(CmdArgs, options::OPT_objcmt_migrate_nsmacros); in RenderARCMigrateToolOptions()
3583 Args.AddLastArg(CmdArgs, options::OPT_objcmt_migrate_protocol_conformance); in RenderARCMigrateToolOptions()
3584 Args.AddLastArg(CmdArgs, options::OPT_objcmt_atomic_property); in RenderARCMigrateToolOptions()
3585 Args.AddLastArg(CmdArgs, options::OPT_objcmt_returns_innerpointer_property); in RenderARCMigrateToolOptions()
3586 Args.AddLastArg(CmdArgs, options::OPT_objcmt_ns_nonatomic_iosonly); in RenderARCMigrateToolOptions()
3587 Args.AddLastArg(CmdArgs, options::OPT_objcmt_migrate_designated_init); in RenderARCMigrateToolOptions()
3588 Args.AddLastArg(CmdArgs, options::OPT_objcmt_allowlist_dir_path); in RenderARCMigrateToolOptions()
3596 Args.hasFlag(options::OPT_fbuiltin, options::OPT_fno_builtin, in RenderBuiltinOptions()
3597 !Args.hasArg(options::OPT_mkernel)); in RenderBuiltinOptions()
3602 if (Args.hasArg(options::OPT_ffreestanding)) in RenderBuiltinOptions()
3606 for (const Arg *A : Args.filtered(options::OPT_fno_builtin_)) { in RenderBuiltinOptions()
3644 if (Args.hasFlag(options::OPT_fmodules, options::OPT_fno_modules, false)) { in RenderModulesOptions()
3645 bool AllowedInCXX = Args.hasFlag(options::OPT_fcxx_modules, in RenderModulesOptions()
3646 options::OPT_fno_cxx_modules, true); in RenderModulesOptions()
3654 if (Args.hasArg(options::OPT_fmodules_ts)) { in RenderModulesOptions()
3661 if (Args.hasFlag(options::OPT_fimplicit_module_maps, in RenderModulesOptions()
3662 options::OPT_fno_implicit_module_maps, HaveClangModules)) in RenderModulesOptions()
3666 Args.addOptInFlag(CmdArgs, options::OPT_fmodules_decluse, in RenderModulesOptions()
3667 options::OPT_fno_modules_decluse); in RenderModulesOptions()
3671 if (Args.hasFlag(options::OPT_fmodules_strict_decluse, in RenderModulesOptions()
3672 options::OPT_fno_modules_strict_decluse, false)) in RenderModulesOptions()
3677 if (!Args.hasFlag(options::OPT_fimplicit_modules, in RenderModulesOptions()
3678 options::OPT_fno_implicit_modules, HaveClangModules)) { in RenderModulesOptions()
3686 if (Arg *A = Args.getLastArg(options::OPT_fmodules_cache_path)) in RenderModulesOptions()
3712 for (const Arg *A : Args.filtered(options::OPT_fprebuilt_module_path)) { in RenderModulesOptions()
3717 if (Args.hasFlag(options::OPT_fprebuilt_implicit_modules, in RenderModulesOptions()
3718 options::OPT_fno_prebuilt_implicit_modules, false)) in RenderModulesOptions()
3720 if (Args.hasFlag(options::OPT_fmodules_validate_input_files_content, in RenderModulesOptions()
3721 options::OPT_fno_modules_validate_input_files_content, in RenderModulesOptions()
3728 Args.AddLastArg(CmdArgs, options::OPT_fmodule_name_EQ); in RenderModulesOptions()
3732 Args.AddAllArgs(CmdArgs, options::OPT_fmodule_map_file); in RenderModulesOptions()
3736 if (Args.hasArg(options::OPT_fbuiltin_module_map)) { in RenderModulesOptions()
3750 Args.AddAllArgs(CmdArgs, options::OPT_fmodule_file); in RenderModulesOptions()
3752 Args.ClaimAllArgs(options::OPT_fmodule_file); in RenderModulesOptions()
3768 Args.AddLastArg(CmdArgs, options::OPT_fmodules_user_build_path); in RenderModulesOptions()
3771 Args.AddAllArgs(CmdArgs, options::OPT_fmodules_ignore_macro); in RenderModulesOptions()
3772 Args.AddLastArg(CmdArgs, options::OPT_fmodules_prune_interval); in RenderModulesOptions()
3773 Args.AddLastArg(CmdArgs, options::OPT_fmodules_prune_after); in RenderModulesOptions()
3776 Args.AddLastArg(CmdArgs, options::OPT_fbuild_session_timestamp); in RenderModulesOptions()
3778 if (Arg *A = Args.getLastArg(options::OPT_fbuild_session_file)) { in RenderModulesOptions()
3779 if (Args.hasArg(options::OPT_fbuild_session_timestamp)) in RenderModulesOptions()
3794 options::OPT_fmodules_validate_once_per_build_session)) { in RenderModulesOptions()
3795 if (!Args.getLastArg(options::OPT_fbuild_session_timestamp, in RenderModulesOptions()
3796 options::OPT_fbuild_session_file)) in RenderModulesOptions()
3800 options::OPT_fmodules_validate_once_per_build_session); in RenderModulesOptions()
3803 if (Args.hasFlag(options::OPT_fmodules_validate_system_headers, in RenderModulesOptions()
3804 options::OPT_fno_modules_validate_system_headers, in RenderModulesOptions()
3809 options::OPT_fmodules_disable_diagnostic_validation); in RenderModulesOptions()
3811 Args.ClaimAllArgs(options::OPT_fbuild_session_timestamp); in RenderModulesOptions()
3812 Args.ClaimAllArgs(options::OPT_fbuild_session_file); in RenderModulesOptions()
3813 Args.ClaimAllArgs(options::OPT_fmodules_validate_once_per_build_session); in RenderModulesOptions()
3814 Args.ClaimAllArgs(options::OPT_fmodules_validate_system_headers); in RenderModulesOptions()
3815 Args.ClaimAllArgs(options::OPT_fno_modules_validate_system_headers); in RenderModulesOptions()
3816 Args.ClaimAllArgs(options::OPT_fmodules_disable_diagnostic_validation); in RenderModulesOptions()
3823 if (const Arg *A = Args.getLastArg(options::OPT_fsigned_char, in RenderCharacterOptions()
3824 options::OPT_fno_signed_char, in RenderCharacterOptions()
3825 options::OPT_funsigned_char, in RenderCharacterOptions()
3826 options::OPT_fno_unsigned_char)) { in RenderCharacterOptions()
3827 if (A->getOption().matches(options::OPT_funsigned_char) || in RenderCharacterOptions()
3828 A->getOption().matches(options::OPT_fno_signed_char)) { in RenderCharacterOptions()
3836 Args.AddLastArg(CmdArgs, options::OPT_fchar8__t, options::OPT_fno_char8__t); in RenderCharacterOptions()
3838 if (const Arg *A = Args.getLastArg(options::OPT_fshort_wchar, in RenderCharacterOptions()
3839 options::OPT_fno_short_wchar)) { in RenderCharacterOptions()
3840 if (A->getOption().matches(options::OPT_fshort_wchar)) { in RenderCharacterOptions()
3865 if (!Args.hasFlag(options::OPT_fobjc_legacy_dispatch, in RenderObjCOptions()
3866 options::OPT_fno_objc_legacy_dispatch, in RenderObjCOptions()
3900 if (Args.hasFlag(options::OPT_fobjc_arc_exceptions, in RenderObjCOptions()
3901 options::OPT_fno_objc_arc_exceptions, in RenderObjCOptions()
3908 if (Args.hasArg(options::OPT_fno_objc_arc)) { in RenderObjCOptions()
3909 Args.ClaimAllArgs(options::OPT_fobjc_arc_exceptions); in RenderObjCOptions()
3910 Args.ClaimAllArgs(options::OPT_fno_objc_arc_exceptions); in RenderObjCOptions()
3917 options::OPT_fobjc_convert_messages_to_runtime_calls, in RenderObjCOptions()
3918 options::OPT_fno_objc_convert_messages_to_runtime_calls); in RenderObjCOptions()
3921 options::OPT_fno_objc_convert_messages_to_runtime_calls)) in RenderObjCOptions()
3933 Args.getLastArg(options::OPT_fobjc_weak, options::OPT_fno_objc_weak); in RenderObjCOptions()
3937 if (WeakArg->getOption().matches(options::OPT_fobjc_weak)) in RenderObjCOptions()
3944 if (Args.hasArg(options::OPT_fobjc_disable_direct_methods_for_testing)) in RenderObjCOptions()
3953 if (const Arg *A = Args.getLastArg(options::OPT__SLASH_diagnostics_classic, in RenderDiagnosticsOptions()
3954 options::OPT__SLASH_diagnostics_column, in RenderDiagnosticsOptions()
3955 options::OPT__SLASH_diagnostics_caret)) { in RenderDiagnosticsOptions()
3957 case options::OPT__SLASH_diagnostics_caret: in RenderDiagnosticsOptions()
3961 case options::OPT__SLASH_diagnostics_column: in RenderDiagnosticsOptions()
3965 case options::OPT__SLASH_diagnostics_classic: in RenderDiagnosticsOptions()
3973 if (!Args.hasFlag(options::OPT_fcaret_diagnostics, in RenderDiagnosticsOptions()
3974 options::OPT_fno_caret_diagnostics, CaretDefault)) in RenderDiagnosticsOptions()
3977 Args.addOptOutFlag(CmdArgs, options::OPT_fdiagnostics_fixit_info, in RenderDiagnosticsOptions()
3978 options::OPT_fno_diagnostics_fixit_info); in RenderDiagnosticsOptions()
3979 Args.addOptOutFlag(CmdArgs, options::OPT_fdiagnostics_show_option, in RenderDiagnosticsOptions()
3980 options::OPT_fno_diagnostics_show_option); in RenderDiagnosticsOptions()
3983 Args.getLastArg(options::OPT_fdiagnostics_show_category_EQ)) { in RenderDiagnosticsOptions()
3988 Args.addOptInFlag(CmdArgs, options::OPT_fdiagnostics_show_hotness, in RenderDiagnosticsOptions()
3989 options::OPT_fno_diagnostics_show_hotness); in RenderDiagnosticsOptions()
3992 Args.getLastArg(options::OPT_fdiagnostics_hotness_threshold_EQ)) { in RenderDiagnosticsOptions()
3998 if (const Arg *A = Args.getLastArg(options::OPT_fdiagnostics_format_EQ)) { in RenderDiagnosticsOptions()
4007 options::OPT_fdiagnostics_show_note_include_stack, in RenderDiagnosticsOptions()
4008 options::OPT_fno_diagnostics_show_note_include_stack)) { in RenderDiagnosticsOptions()
4010 if (O.matches(options::OPT_fdiagnostics_show_note_include_stack)) in RenderDiagnosticsOptions()
4020 Args.getLastArg(options::OPT_fcolor_diagnostics, in RenderDiagnosticsOptions()
4021 options::OPT_fno_color_diagnostics); in RenderDiagnosticsOptions()
4022 if (const Arg *A = Args.getLastArg(options::OPT_fdiagnostics_color_EQ)) { in RenderDiagnosticsOptions()
4032 if (Args.hasArg(options::OPT_fansi_escape_codes)) in RenderDiagnosticsOptions()
4035 Args.addOptOutFlag(CmdArgs, options::OPT_fshow_source_location, in RenderDiagnosticsOptions()
4036 options::OPT_fno_show_source_location); in RenderDiagnosticsOptions()
4038 if (Args.hasArg(options::OPT_fdiagnostics_absolute_paths)) in RenderDiagnosticsOptions()
4041 if (!Args.hasFlag(options::OPT_fshow_column, options::OPT_fno_show_column, in RenderDiagnosticsOptions()
4045 Args.addOptOutFlag(CmdArgs, options::OPT_fspell_checking, in RenderDiagnosticsOptions()
4046 options::OPT_fno_spell_checking); in RenderDiagnosticsOptions()
4051 Arg = Args.getLastArg(options::OPT_gsplit_dwarf, options::OPT_gsplit_dwarf_EQ, in getDebugFissionKind()
4052 options::OPT_gno_split_dwarf); in getDebugFissionKind()
4053 if (!Arg || Arg->getOption().matches(options::OPT_gno_split_dwarf)) in getDebugFissionKind()
4056 if (Arg->getOption().matches(options::OPT_gsplit_dwarf)) in getDebugFissionKind()
4074 Args.getLastArg(options::OPT_gdwarf64, options::OPT_gdwarf32); in renderDwarfFormat()
4078 if (DwarfFormatArg->getOption().matches(options::OPT_gdwarf64)) { in renderDwarfFormat()
4099 if (Args.hasFlag(options::OPT_fdebug_info_for_profiling, in renderDebugOptions()
4100 options::OPT_fno_debug_info_for_profiling, false) && in renderDebugOptions()
4102 Args.getLastArg(options::OPT_fdebug_info_for_profiling), Args, D, TC)) in renderDebugOptions()
4117 Args.hasFlag(options::OPT_fsplit_dwarf_inlining, in renderDebugOptions()
4118 options::OPT_fno_split_dwarf_inlining, false); in renderDebugOptions()
4123 if (IRInput || Args.hasArg(options::OPT_g_Group)) { in renderDebugOptions()
4132 if (const Arg *A = Args.getLastArg(options::OPT_g_Group)) { in renderDebugOptions()
4137 A->getOption().matches(options::OPT_gN_Group)) { in renderDebugOptions()
4153 Args.getLastArg(options::OPT_gTune_Group, options::OPT_ggdbN_Group)) { in renderDebugOptions()
4155 if (A->getOption().matches(options::OPT_glldb)) in renderDebugOptions()
4157 else if (A->getOption().matches(options::OPT_gsce)) in renderDebugOptions()
4159 else if (A->getOption().matches(options::OPT_gdbx)) in renderDebugOptions()
4176 if (const Arg *A = Args.getLastArg(options::OPT_gcodeview)) { in renderDebugOptions()
4226 if (const Arg *A = Args.getLastArg(options::OPT_gstrict_dwarf)) in renderDebugOptions()
4228 if (Args.hasFlag(options::OPT_gstrict_dwarf, options::OPT_gno_strict_dwarf, in renderDebugOptions()
4233 Args.ClaimAllArgs(options::OPT_g_flags_Group); in renderDebugOptions()
4241 if (const Arg *A = Args.getLastArg(options::OPT_gcolumn_info)) in renderDebugOptions()
4243 if (!Args.hasFlag(options::OPT_gcolumn_info, options::OPT_gno_column_info, in renderDebugOptions()
4251 if (const Arg *A = Args.getLastArg(options::OPT_gmodules)) in renderDebugOptions()
4270 options::OPT_fstandalone_debug, options::OPT_fno_standalone_debug, in renderDebugOptions()
4273 if (const Arg *A = Args.getLastArg(options::OPT_fstandalone_debug)) in renderDebugOptions()
4278 if (Args.hasFlag(options::OPT_fno_eliminate_unused_debug_types, in renderDebugOptions()
4279 options::OPT_feliminate_unused_debug_types, false)) in renderDebugOptions()
4285 if (Args.hasFlag(options::OPT_gembed_source, options::OPT_gno_embed_source, in renderDebugOptions()
4291 const Arg *A = Args.getLastArg(options::OPT_gembed_source); in renderDebugOptions()
4309 if (Args.hasFlag(options::OPT_gcodeview_ghash, in renderDebugOptions()
4310 options::OPT_gno_codeview_ghash, false)) { in renderDebugOptions()
4316 if (Args.hasFlag(options::OPT_gno_inline_line_tables, in renderDebugOptions()
4317 options::OPT_ginline_line_tables, false)) { in renderDebugOptions()
4333 if (Args.hasFlag(options::OPT_fdebug_macro, options::OPT_fno_debug_macro, in renderDebugOptions()
4335 if (checkDebugInfoOption(Args.getLastArg(options::OPT_fdebug_macro), Args, in renderDebugOptions()
4341 Args.getLastArg(options::OPT_ggnu_pubnames, options::OPT_gno_gnu_pubnames, in renderDebugOptions()
4342 options::OPT_gpubnames, options::OPT_gno_pubnames); in renderDebugOptions()
4346 (!PubnamesArg->getOption().matches(options::OPT_gno_gnu_pubnames) && in renderDebugOptions()
4347 !PubnamesArg->getOption().matches(options::OPT_gno_pubnames))) in renderDebugOptions()
4349 options::OPT_gpubnames) in renderDebugOptions()
4353 Args.getLastArg(options::OPT_gsimple_template_names, in renderDebugOptions()
4354 options::OPT_gno_simple_template_names); in renderDebugOptions()
4359 if (Opt.matches(options::OPT_gsimple_template_names)) { in renderDebugOptions()
4365 if (Args.hasFlag(options::OPT_fdebug_ranges_base_address, in renderDebugOptions()
4366 options::OPT_fno_debug_ranges_base_address, false)) { in renderDebugOptions()
4374 if (const Arg *A = Args.getLastArg(options::OPT_gdwarf_aranges)) in renderDebugOptions()
4381 if (Args.hasFlag(options::OPT_fforce_dwarf_frame, in renderDebugOptions()
4382 options::OPT_fno_force_dwarf_frame, false)) in renderDebugOptions()
4385 if (Args.hasFlag(options::OPT_fdebug_types_section, in renderDebugOptions()
4386 options::OPT_fno_debug_types_section, false)) { in renderDebugOptions()
4389 << Args.getLastArg(options::OPT_fdebug_types_section) in renderDebugOptions()
4393 Args.getLastArg(options::OPT_fdebug_types_section), Args, D, in renderDebugOptions()
4403 if (!Args.hasFlag(options::OPT_fdwarf_directory_asm, in renderDebugOptions()
4404 options::OPT_fno_dwarf_directory_asm, in renderDebugOptions()
4431 Args.hasArg(options::OPT_mkernel, options::OPT_fapple_kext); in ConstructJob()
4453 Args.hasFlag(options::OPT_fopenmp_new_driver, in ConstructJob()
4454 options::OPT_no_offload_new_driver, true)) || in ConstructJob()
4456 Args.hasFlag(options::OPT_offload_new_driver, in ConstructJob()
4457 options::OPT_no_offload_new_driver, false)); in ConstructJob()
4460 Args.hasFlag(options::OPT_fgpu_rdc, options::OPT_fno_gpu_rdc, false); in ConstructJob()
4467 auto *ModuleNameArg = Args.getLastArg(options::OPT_fmodule_name_EQ); in ConstructJob()
4545 if (const Arg *MJ = Args.getLastArg(options::OPT_MJ)) { in ConstructJob()
4547 Args.ClaimAllArgs(options::OPT_MJ); in ConstructJob()
4549 Args.getLastArg(options::OPT_gen_cdb_fragment_path)) { in ConstructJob()
4552 Args.ClaimAllArgs(options::OPT_gen_cdb_fragment_path); in ConstructJob()
4587 if (Args.hasFlag(options::OPT_fsycl, options::OPT_fno_sycl, false)) { in ConstructJob()
4590 if (Arg *A = Args.getLastArg(options::OPT_sycl_std_EQ)) { in ConstructJob()
4647 Args.ClaimAllArgs(options::OPT_mrelax_all); in ConstructJob()
4648 Args.ClaimAllArgs(options::OPT_mno_relax_all); in ConstructJob()
4649 Args.ClaimAllArgs(options::OPT_mincremental_linker_compatible); in ConstructJob()
4650 Args.ClaimAllArgs(options::OPT_mno_incremental_linker_compatible); in ConstructJob()
4656 Args.ClaimAllArgs(options::OPT_mimplicit_it_EQ); in ConstructJob()
4662 Args.ClaimAllArgs(options::OPT_Wa_COMMA); in ConstructJob()
4663 Args.ClaimAllArgs(options::OPT_Xassembler); in ConstructJob()
4664 Args.ClaimAllArgs(options::OPT_femit_dwarf_unwind_EQ); in ConstructJob()
4677 if (Args.hasArg(options::OPT_rewrite_objc) && in ConstructJob()
4678 !Args.hasArg(options::OPT_g_Group)) in ConstructJob()
4689 (void)Args.hasArg(options::OPT_force__cpusubtype__ALL); in ConstructJob()
4707 if (Arg *ProductNameArg = Args.getLastArg(options::OPT_product_name_EQ)) in ConstructJob()
4720 if (Triple.isAMDGCN() && IsOpenMPDevice && Args.hasArg(options::OPT_S) && in ConstructJob()
4721 Args.hasArg(options::OPT_emit_llvm)) { in ConstructJob()
4729 Args.hasArg(options::OPT_interface_stub_version_EQ) in ConstructJob()
4730 ? Args.getLastArgValue(options::OPT_interface_stub_version_EQ) in ConstructJob()
4761 !Args.hasFlag(options::OPT_fopenmp_new_driver, in ConstructJob()
4762 options::OPT_no_offload_new_driver, true) && in ConstructJob()
4763 !Args.hasFlag(options::OPT_offload_new_driver, in ConstructJob()
4764 options::OPT_no_offload_new_driver, false) && in ConstructJob()
4767 << Args.getLastArg(options::OPT_foffload_lto, in ConstructJob()
4768 options::OPT_foffload_lto_EQ) in ConstructJob()
4780 if (const Arg *A = Args.getLastArg(options::OPT_fthinlto_index_EQ)) { in ConstructJob()
4783 Args.AddLastArg(CmdArgs, options::OPT_fthinlto_index_EQ); in ConstructJob()
4786 if (Args.getLastArg(options::OPT_fthin_link_bitcode_EQ)) in ConstructJob()
4787 Args.AddLastArg(CmdArgs, options::OPT_fthin_link_bitcode_EQ); in ConstructJob()
4789 if (Args.getLastArg(options::OPT_save_temps_EQ)) in ConstructJob()
4790 Args.AddLastArg(CmdArgs, options::OPT_save_temps_EQ); in ConstructJob()
4792 auto *MemProfArg = Args.getLastArg(options::OPT_fmemory_profile, in ConstructJob()
4793 options::OPT_fmemory_profile_EQ, in ConstructJob()
4794 options::OPT_fno_memory_profile); in ConstructJob()
4796 !MemProfArg->getOption().matches(options::OPT_fno_memory_profile)) in ConstructJob()
4804 Args.AddLastArg(CmdArgs, options::OPT_fembed_bitcode_EQ); in ConstructJob()
4814 options::OPT_mkernel, in ConstructJob()
4815 options::OPT_fapple_kext, in ConstructJob()
4816 options::OPT_ffunction_sections, in ConstructJob()
4817 options::OPT_fno_function_sections, in ConstructJob()
4818 options::OPT_fdata_sections, in ConstructJob()
4819 options::OPT_fno_data_sections, in ConstructJob()
4820 options::OPT_fbasic_block_sections_EQ, in ConstructJob()
4821 options::OPT_funique_internal_linkage_names, in ConstructJob()
4822 options::OPT_fno_unique_internal_linkage_names, in ConstructJob()
4823 options::OPT_funique_section_names, in ConstructJob()
4824 options::OPT_fno_unique_section_names, in ConstructJob()
4825 options::OPT_funique_basic_block_section_names, in ConstructJob()
4826 options::OPT_fno_unique_basic_block_section_names, in ConstructJob()
4827 options::OPT_mrestrict_it, in ConstructJob()
4828 options::OPT_mno_restrict_it, in ConstructJob()
4829 options::OPT_mstackrealign, in ConstructJob()
4830 options::OPT_mno_stackrealign, in ConstructJob()
4831 options::OPT_mstack_alignment, in ConstructJob()
4832 options::OPT_mcmodel_EQ, in ConstructJob()
4833 options::OPT_mlong_calls, in ConstructJob()
4834 options::OPT_mno_long_calls, in ConstructJob()
4835 options::OPT_ggnu_pubnames, in ConstructJob()
4836 options::OPT_gdwarf_aranges, in ConstructJob()
4837 options::OPT_fdebug_types_section, in ConstructJob()
4838 options::OPT_fno_debug_types_section, in ConstructJob()
4839 options::OPT_fdwarf_directory_asm, in ConstructJob()
4840 options::OPT_fno_dwarf_directory_asm, in ConstructJob()
4841 options::OPT_mrelax_all, in ConstructJob()
4842 options::OPT_mno_relax_all, in ConstructJob()
4843 options::OPT_ftrap_function_EQ, in ConstructJob()
4844 options::OPT_ffixed_r9, in ConstructJob()
4845 options::OPT_mfix_cortex_a53_835769, in ConstructJob()
4846 options::OPT_mno_fix_cortex_a53_835769, in ConstructJob()
4847 options::OPT_ffixed_x18, in ConstructJob()
4848 options::OPT_mglobal_merge, in ConstructJob()
4849 options::OPT_mno_global_merge, in ConstructJob()
4850 options::OPT_mred_zone, in ConstructJob()
4851 options::OPT_mno_red_zone, in ConstructJob()
4852 options::OPT_Wa_COMMA, in ConstructJob()
4853 options::OPT_Xassembler, in ConstructJob()
4854 options::OPT_mllvm, in ConstructJob()
4861 Args.addOptOutFlag(CmdArgs, options::OPT_foptimize_sibling_calls, in ConstructJob()
4862 options::OPT_fno_optimize_sibling_calls); in ConstructJob()
4883 if (const Arg *A = Args.getLastArg(options::OPT_O_Group)) { in ConstructJob()
4884 if (A->getOption().matches(options::OPT_O4)) { in ConstructJob()
4937 if (Args.hasFlag(options::OPT_fdiscard_value_names, in ConstructJob()
4938 options::OPT_fno_discard_value_names, !IsAssertBuild)) { in ConstructJob()
4939 if (Args.hasArg(options::OPT_fdiscard_value_names) && in ConstructJob()
4955 if (Args.hasArg(options::OPT_static)) in ConstructJob()
4958 if (Args.hasArg(options::OPT_municode)) in ConstructJob()
4965 (isa<PreprocessJobAction>(JA) && Args.hasArg(options::OPT__analyze))) in ConstructJob()
4972 for (auto Arg : Args.filtered(options::OPT_Xclang)) in ConstructJob()
4978 for (auto Arg : Args.filtered(options::OPT_Xanalyzer)) in ConstructJob()
4997 if (const Arg *A = Args.getLastArg(options::OPT_falign_loops_EQ)) { in ConstructJob()
5021 if (Args.hasArg(options::OPT_mcmse) && in ConstructJob()
5022 !Args.hasArg(options::OPT_fallow_unsupported)) { in ConstructJob()
5030 !Args.hasArg(options::OPT_fallow_unsupported)) in ConstructJob()
5052 if (Arg *A = Args.getLastArg(options::OPT_meabi)) { in ConstructJob()
5069 Arg *A = Args.getLastArg(options::OPT_fsemantic_interposition, in ConstructJob()
5070 options::OPT_fno_semantic_interposition); in ConstructJob()
5077 else if (A->getOption().matches(options::OPT_fsemantic_interposition)) in ConstructJob()
5086 if (Arg *A = Args.getLastArg(options::OPT_mthread_model)) { in ConstructJob()
5099 Args.AddLastArg(CmdArgs, options::OPT_fveclib); in ConstructJob()
5101 if (Args.hasFlag(options::OPT_fmerge_all_constants, in ConstructJob()
5102 options::OPT_fno_merge_all_constants, false)) in ConstructJob()
5105 if (Args.hasFlag(options::OPT_fno_delete_null_pointer_checks, in ConstructJob()
5106 options::OPT_fdelete_null_pointer_checks, false)) in ConstructJob()
5111 for (const Arg *A : Args.filtered(options::OPT_frewrite_map_file_EQ)) { in ConstructJob()
5121 if (Arg *A = Args.getLastArg(options::OPT_mabi_EQ_vec_extabi, in ConstructJob()
5122 options::OPT_mabi_EQ_vec_default)) { in ConstructJob()
5126 if (A->getOption().getID() == options::OPT_mabi_EQ_vec_extabi) in ConstructJob()
5132 if (Arg *A = Args.getLastArg(options::OPT_mabi_EQ_quadword_atomics)) { in ConstructJob()
5139 if (Arg *A = Args.getLastArg(options::OPT_mlong_double_128)) { in ConstructJob()
5147 if (Arg *A = Args.getLastArg(options::OPT_Wframe_larger_than_EQ)) { in ConstructJob()
5158 Args.addOptOutFlag(CmdArgs, options::OPT_fjump_tables, in ConstructJob()
5159 options::OPT_fno_jump_tables); in ConstructJob()
5160 Args.addOptInFlag(CmdArgs, options::OPT_fprofile_sample_accurate, in ConstructJob()
5161 options::OPT_fno_profile_sample_accurate); in ConstructJob()
5162 Args.addOptOutFlag(CmdArgs, options::OPT_fpreserve_as_comments, in ConstructJob()
5163 options::OPT_fno_preserve_as_comments); in ConstructJob()
5165 if (Arg *A = Args.getLastArg(options::OPT_mregparm_EQ)) { in ConstructJob()
5170 if (Arg *A = Args.getLastArg(options::OPT_maix_struct_return, in ConstructJob()
5171 options::OPT_msvr4_struct_return)) { in ConstructJob()
5175 } else if (A->getOption().matches(options::OPT_maix_struct_return)) { in ConstructJob()
5178 assert(A->getOption().matches(options::OPT_msvr4_struct_return)); in ConstructJob()
5183 if (Arg *A = Args.getLastArg(options::OPT_fpcc_struct_return, in ConstructJob()
5184 options::OPT_freg_struct_return)) { in ConstructJob()
5188 } else if (A->getOption().matches(options::OPT_fpcc_struct_return)) { in ConstructJob()
5191 assert(A->getOption().matches(options::OPT_freg_struct_return)); in ConstructJob()
5196 if (Args.hasFlag(options::OPT_mrtd, options::OPT_mno_rtd, false)) in ConstructJob()
5199 if (Args.hasArg(options::OPT_fenable_matrix)) { in ConstructJob()
5223 Args.addOptOutFlag(CmdArgs, options::OPT_fzero_initialized_in_bss, in ConstructJob()
5224 options::OPT_fno_zero_initialized_in_bss); in ConstructJob()
5230 OFastEnabled ? options::OPT_Ofast : options::OPT_fstrict_aliasing; in ConstructJob()
5234 if (!Args.hasFlag(options::OPT_fstrict_aliasing, StrictAliasingAliasOption, in ConstructJob()
5235 options::OPT_fno_strict_aliasing, TBAAOnByDefault)) in ConstructJob()
5237 if (!Args.hasFlag(options::OPT_fstruct_path_tbaa, in ConstructJob()
5238 options::OPT_fno_struct_path_tbaa, true)) in ConstructJob()
5240 Args.addOptInFlag(CmdArgs, options::OPT_fstrict_enums, in ConstructJob()
5241 options::OPT_fno_strict_enums); in ConstructJob()
5242 Args.addOptOutFlag(CmdArgs, options::OPT_fstrict_return, in ConstructJob()
5243 options::OPT_fno_strict_return); in ConstructJob()
5244 Args.addOptInFlag(CmdArgs, options::OPT_fallow_editor_placeholders, in ConstructJob()
5245 options::OPT_fno_allow_editor_placeholders); in ConstructJob()
5246 Args.addOptInFlag(CmdArgs, options::OPT_fstrict_vtable_pointers, in ConstructJob()
5247 options::OPT_fno_strict_vtable_pointers); in ConstructJob()
5248 Args.addOptInFlag(CmdArgs, options::OPT_fforce_emit_vtables, in ConstructJob()
5249 options::OPT_fno_force_emit_vtables); in ConstructJob()
5250 Args.addOptOutFlag(CmdArgs, options::OPT_foptimize_sibling_calls, in ConstructJob()
5251 options::OPT_fno_optimize_sibling_calls); in ConstructJob()
5252 Args.addOptOutFlag(CmdArgs, options::OPT_fescaping_block_tail_calls, in ConstructJob()
5253 options::OPT_fno_escaping_block_tail_calls); in ConstructJob()
5255 Args.AddLastArg(CmdArgs, options::OPT_ffine_grained_bitfield_accesses, in ConstructJob()
5256 options::OPT_fno_fine_grained_bitfield_accesses); in ConstructJob()
5258 Args.AddLastArg(CmdArgs, options::OPT_fexperimental_relative_cxx_abi_vtables, in ConstructJob()
5259 options::OPT_fno_experimental_relative_cxx_abi_vtables); in ConstructJob()
5262 if (Args.hasFlag(options::OPT_fsplit_stack, options::OPT_fno_split_stack, in ConstructJob()
5267 if (Args.hasFlag(options::OPT_fprotect_parens, in ConstructJob()
5268 options::OPT_fno_protect_parens, false)) in ConstructJob()
5273 if (Arg *A = Args.getLastArg(options::OPT_fextend_args_EQ)) { in ConstructJob()
5287 if (Arg *A = Args.getLastArg(options::OPT_mdouble_EQ)) { in ConstructJob()
5295 if (Arg *A = Args.getLastArg(options::OPT_LongDouble_Group)) { in ConstructJob()
5299 (A->getOption().getID() != options::OPT_mlong_double_80)) in ConstructJob()
5309 if (!Args.hasFlag(options::OPT_fverbose_asm, options::OPT_fno_verbose_asm, in ConstructJob()
5315 if (Arg *A = Args.getLastArg(options::OPT_fbinutils_version_EQ)) { in ConstructJob()
5334 if (Args.hasArg(options::OPT_fdebug_pass_structure)) { in ConstructJob()
5338 if (Args.hasArg(options::OPT_fdebug_pass_arguments)) { in ConstructJob()
5354 if (Args.hasFlag(options::OPT_mms_bitfields, options::OPT_mno_ms_bitfields, in ConstructJob()
5362 if (Arg *A = Args.getLastArg(options::OPT_fdirect_access_external_data, in ConstructJob()
5363 options::OPT_fno_direct_access_external_data)) in ConstructJob()
5364 if (A->getOption().matches(options::OPT_fdirect_access_external_data) != in ConstructJob()
5368 if (Args.hasFlag(options::OPT_fno_plt, options::OPT_fplt, false)) { in ConstructJob()
5376 Args.hasFlag(options::OPT_ffreestanding, options::OPT_fhosted, false) || in ConstructJob()
5381 Args.AddLastArg(CmdArgs, options::OPT_fno_knr_functions); in ConstructJob()
5388 options::OPT_fasynchronous_unwind_tables, in ConstructJob()
5389 options::OPT_fno_asynchronous_unwind_tables, in ConstructJob()
5392 bool UnwindTables = Args.hasFlag(options::OPT_funwind_tables, in ConstructJob()
5393 options::OPT_fno_unwind_tables, false); in ConstructJob()
5401 if (!Args.getLastArg(options::OPT_gpu_use_aux_triple_only) && in ConstructJob()
5417 if (Arg *A = Args.getLastArg(options::OPT_mcmodel_EQ)) { in ConstructJob()
5431 if (Arg *A = Args.getLastArg(options::OPT_mtls_size_EQ)) { in ConstructJob()
5441 Args.AddLastArg(CmdArgs, options::OPT_mtls_size_EQ); in ConstructJob()
5484 if (Args.hasFlag(options::OPT_fjmc, options::OPT_fno_jmc, false)) { in ConstructJob()
5514 if (Arg *A = Args.getLastArg(options::OPT_mlinker_version_EQ)) { in ConstructJob()
5521 if (!Args.hasArg(options::OPT_fallow_unsupported)) { in ConstructJob()
5525 if ((Unsupported = Args.getLastArg(options::OPT_fapple_kext)) || in ConstructJob()
5526 (Unsupported = Args.getLastArg(options::OPT_mkernel))) in ConstructJob()
5531 if ((Unsupported = Args.getLastArg(options::OPT_faltivec))) in ConstructJob()
5535 if ((Unsupported = Args.getLastArg(options::OPT_fno_altivec))) in ConstructJob()
5540 Args.AddAllArgs(CmdArgs, options::OPT_v); in ConstructJob()
5542 if (Args.getLastArg(options::OPT_H)) { in ConstructJob()
5546 Args.AddAllArgs(CmdArgs, options::OPT_fshow_skipped_includes); in ConstructJob()
5555 Args.AddLastArg(CmdArgs, options::OPT_P); in ConstructJob()
5556 Args.AddLastArg(CmdArgs, options::OPT_print_ivar_layout); in ConstructJob()
5572 if (Args.hasArg(options::OPT_fcrash_diagnostics_dir)) { in ConstructJob()
5573 StringRef Dir = Args.getLastArgValue(options::OPT_fcrash_diagnostics_dir); in ConstructJob()
5580 if (Args.hasFlag(options::OPT_ffunction_sections, in ConstructJob()
5581 options::OPT_fno_function_sections, UseSeparateSections)) { in ConstructJob()
5585 if (Arg *A = Args.getLastArg(options::OPT_fbasic_block_sections_EQ)) { in ConstructJob()
5606 if (Args.hasFlag(options::OPT_fdata_sections, options::OPT_fno_data_sections, in ConstructJob()
5611 Args.addOptOutFlag(CmdArgs, options::OPT_funique_section_names, in ConstructJob()
5612 options::OPT_fno_unique_section_names); in ConstructJob()
5613 Args.addOptInFlag(CmdArgs, options::OPT_funique_internal_linkage_names, in ConstructJob()
5614 options::OPT_fno_unique_internal_linkage_names); in ConstructJob()
5615 Args.addOptInFlag(CmdArgs, options::OPT_funique_basic_block_section_names, in ConstructJob()
5616 options::OPT_fno_unique_basic_block_section_names); in ConstructJob()
5618 if (Arg *A = Args.getLastArg(options::OPT_fsplit_machine_functions, in ConstructJob()
5619 options::OPT_fno_split_machine_functions)) { in ConstructJob()
5622 if (A->getOption().matches(options::OPT_fsplit_machine_functions)) in ConstructJob()
5630 Args.AddLastArg(CmdArgs, options::OPT_finstrument_functions, in ConstructJob()
5631 options::OPT_finstrument_functions_after_inlining, in ConstructJob()
5632 options::OPT_finstrument_function_entry_bare); in ConstructJob()
5640 Args.AddLastArg(CmdArgs, options::OPT_fclang_abi_compat_EQ); in ConstructJob()
5644 !Args.hasArg(options::OPT_nostdlib, options::OPT_nodefaultlibs)) { in ConstructJob()
5650 if (Args.hasArg(options::OPT_nostdinc)) { in ConstructJob()
5654 if (Args.hasArg(options::OPT_nostdlibinc)) in ConstructJob()
5656 Args.AddLastArg(CmdArgs, options::OPT_nostdincxx); in ConstructJob()
5657 Args.AddLastArg(CmdArgs, options::OPT_nobuiltininc); in ConstructJob()
5664 Args.AddLastArg(CmdArgs, options::OPT_working_directory); in ConstructJob()
5679 Args.ClaimAllArgs(options::OPT_D); in ConstructJob()
5682 if (Arg *A = Args.getLastArg(options::OPT_O_Group)) { in ConstructJob()
5683 if (A->getOption().matches(options::OPT_O4)) { in ConstructJob()
5693 Args.filtered(options::OPT_clang_ignored_gcc_optimization_f_Group)) { in ConstructJob()
5699 Args.filtered(options::OPT_clang_ignored_legacy_options_Group)) { in ConstructJob()
5706 Args.AddAllArgs(CmdArgs, options::OPT_R_Group); in ConstructJob()
5709 Args.filtered(options::OPT_W_Group, options::OPT__SLASH_wd)) { in ConstructJob()
5711 if (A->getOption().getID() == options::OPT__SLASH_wd) { in ConstructJob()
5728 if (Args.hasFlag(options::OPT_pedantic, options::OPT_no_pedantic, false)) in ConstructJob()
5730 Args.AddLastArg(CmdArgs, options::OPT_pedantic_errors); in ConstructJob()
5731 Args.AddLastArg(CmdArgs, options::OPT_w); in ConstructJob()
5734 if (Args.hasFlag(options::OPT_ffixed_point, options::OPT_fno_fixed_point, in ConstructJob()
5736 Args.AddLastArg(CmdArgs, options::OPT_ffixed_point); in ConstructJob()
5738 if (Arg *A = Args.getLastArg(options::OPT_fcxx_abi_EQ)) in ConstructJob()
5741 Args.AddLastArg(CmdArgs, options::OPT_fexperimental_relative_cxx_abi_vtables, in ConstructJob()
5742 options::OPT_fno_experimental_relative_cxx_abi_vtables); in ConstructJob()
5744 if (Arg *A = Args.getLastArg(options::OPT_ffuchsia_api_level_EQ)) in ConstructJob()
5754 const Arg *Std = Args.getLastArg(options::OPT_std_EQ, options::OPT_ansi); in ConstructJob()
5756 if (Std->getOption().matches(options::OPT_ansi)) in ConstructJob()
5765 if (Arg *A = Args.getLastArg(options::OPT_std_EQ, options::OPT_ansi, in ConstructJob()
5766 options::OPT_ftrigraphs, in ConstructJob()
5767 options::OPT_fno_trigraphs)) in ConstructJob()
5778 if (!Args.hasArg(options::OPT__SLASH_std)) { in ConstructJob()
5779 Args.AddAllArgsTranslated(CmdArgs, options::OPT_std_default_EQ, "-std=", in ConstructJob()
5787 Args.AddLastArg(CmdArgs, options::OPT_ftrigraphs, in ConstructJob()
5788 options::OPT_fno_trigraphs); in ConstructJob()
5809 Args.getLastArg(options::OPT_Wwrite_strings, in ConstructJob()
5810 options::OPT_Wno_write_strings, options::OPT_w); in ConstructJob()
5812 WriteStrings->getOption().matches(options::OPT_Wwrite_strings)) in ConstructJob()
5820 Args.hasFlag(options::OPT_Wdeprecated, options::OPT_Wno_deprecated, in ConstructJob()
5826 if (Arg *Asm = Args.getLastArg(options::OPT_fasm, options::OPT_fno_asm)) { in ConstructJob()
5827 if (Asm->getOption().matches(options::OPT_fasm)) in ConstructJob()
5842 if (Arg *A = Args.getLastArg(options::OPT_ftemplate_depth_, in ConstructJob()
5843 options::OPT_ftemplate_depth_EQ)) { in ConstructJob()
5848 if (Arg *A = Args.getLastArg(options::OPT_foperator_arrow_depth_EQ)) { in ConstructJob()
5853 if (Arg *A = Args.getLastArg(options::OPT_fconstexpr_depth_EQ)) { in ConstructJob()
5858 if (Arg *A = Args.getLastArg(options::OPT_fconstexpr_steps_EQ)) { in ConstructJob()
5863 Args.AddLastArg(CmdArgs, options::OPT_fexperimental_library); in ConstructJob()
5865 if (Args.hasArg(options::OPT_fexperimental_new_constant_interpreter)) in ConstructJob()
5868 if (Arg *A = Args.getLastArg(options::OPT_fbracket_depth_EQ)) { in ConstructJob()
5873 if (Arg *A = Args.getLastArg(options::OPT_Wlarge_by_value_copy_EQ, in ConstructJob()
5874 options::OPT_Wlarge_by_value_copy_def)) { in ConstructJob()
5882 if (Args.hasArg(options::OPT_relocatable_pch)) in ConstructJob()
5885 if (const Arg *A = Args.getLastArg(options::OPT_fcf_runtime_abi_EQ)) { in ConstructJob()
5896 if (Arg *A = Args.getLastArg(options::OPT_fconstant_string_class_EQ)) { in ConstructJob()
5901 if (Arg *A = Args.getLastArg(options::OPT_ftabstop_EQ)) { in ConstructJob()
5906 if (Args.hasFlag(options::OPT_fstack_size_section, in ConstructJob()
5907 options::OPT_fno_stack_size_section, RawTriple.isPS4())) in ConstructJob()
5910 if (Args.hasArg(options::OPT_fstack_usage)) { in ConstructJob()
5913 if (Arg *OutputOpt = Args.getLastArg(options::OPT_o)) { in ConstructJob()
5923 if (Arg *A = Args.getLastArg(options::OPT_ferror_limit_EQ)) in ConstructJob()
5928 if (Arg *A = Args.getLastArg(options::OPT_fmacro_backtrace_limit_EQ)) { in ConstructJob()
5933 if (Arg *A = Args.getLastArg(options::OPT_ftemplate_backtrace_limit_EQ)) { in ConstructJob()
5938 if (Arg *A = Args.getLastArg(options::OPT_fconstexpr_backtrace_limit_EQ)) { in ConstructJob()
5943 if (Arg *A = Args.getLastArg(options::OPT_fspell_checking_limit_EQ)) { in ConstructJob()
5950 if (Arg *A = Args.getLastArg(options::OPT_fmessage_length_EQ)) { in ConstructJob()
5964 if (Arg *A = Args.getLastArg(options::OPT_frandomize_layout_seed_EQ)) in ConstructJob()
5968 if (Arg *A = Args.getLastArg(options::OPT_frandomize_layout_seed_file_EQ)) in ConstructJob()
5973 if (const Arg *A = Args.getLastArg(options::OPT_fvisibility_EQ, in ConstructJob()
5974 options::OPT_fvisibility_ms_compat)) { in ConstructJob()
5975 if (A->getOption().matches(options::OPT_fvisibility_EQ)) { in ConstructJob()
5979 assert(A->getOption().matches(options::OPT_fvisibility_ms_compat)); in ConstructJob()
5995 Args.getLastArg(options::OPT_fvisibility_from_dllstorageclass, in ConstructJob()
5996 options::OPT_fno_visibility_from_dllstorageclass)) { in ConstructJob()
5998 options::OPT_fvisibility_from_dllstorageclass)) { in ConstructJob()
6000 Args.AddLastArg(CmdArgs, options::OPT_fvisibility_dllexport_EQ); in ConstructJob()
6001 Args.AddLastArg(CmdArgs, options::OPT_fvisibility_nodllstorageclass_EQ); in ConstructJob()
6002 Args.AddLastArg(CmdArgs, options::OPT_fvisibility_externs_dllimport_EQ); in ConstructJob()
6004 options::OPT_fvisibility_externs_nodllstorageclass_EQ); in ConstructJob()
6008 if (const Arg *A = Args.getLastArg(options::OPT_mignore_xcoff_visibility)) { in ConstructJob()
6017 Args.getLastArg(options::OPT_mdefault_visibility_export_mapping_EQ)) { in ConstructJob()
6025 if (Args.hasFlag(options::OPT_fvisibility_inlines_hidden, in ConstructJob()
6026 options::OPT_fno_visibility_inlines_hidden, false)) in ConstructJob()
6029 Args.AddLastArg(CmdArgs, options::OPT_fvisibility_inlines_hidden_static_local_var, in ConstructJob()
6030 options::OPT_fno_visibility_inlines_hidden_static_local_var); in ConstructJob()
6031 Args.AddLastArg(CmdArgs, options::OPT_fvisibility_global_new_delete_hidden); in ConstructJob()
6032 Args.AddLastArg(CmdArgs, options::OPT_ftlsmodel_EQ); in ConstructJob()
6034 if (Args.hasFlag(options::OPT_fnew_infallible, in ConstructJob()
6035 options::OPT_fno_new_infallible, false)) in ConstructJob()
6038 if (Args.hasFlag(options::OPT_fno_operator_names, in ConstructJob()
6039 options::OPT_foperator_names, false)) in ConstructJob()
6043 Args.AddLastArg(CmdArgs, options::OPT_femit_all_decls); in ConstructJob()
6044 Args.AddLastArg(CmdArgs, options::OPT_fheinous_gnu_extensions); in ConstructJob()
6045 Args.AddLastArg(CmdArgs, options::OPT_fdigraphs, options::OPT_fno_digraphs); in ConstructJob()
6046 Args.AddLastArg(CmdArgs, options::OPT_femulated_tls, in ConstructJob()
6047 options::OPT_fno_emulated_tls); in ConstructJob()
6048 Args.AddLastArg(CmdArgs, options::OPT_fzero_call_used_regs_EQ); in ConstructJob()
6050 if (Arg *A = Args.getLastArg(options::OPT_fzero_call_used_regs_EQ)) { in ConstructJob()
6061 Args.AddLastArg(CmdArgs, options::OPT_fzvector); in ConstructJob()
6063 Args.AddLastArg(CmdArgs, options::OPT_fdiagnostics_show_template_tree); in ConstructJob()
6064 Args.AddLastArg(CmdArgs, options::OPT_fno_elide_type); in ConstructJob()
6068 if (Args.hasFlag(options::OPT_fopenmp, options::OPT_fopenmp_EQ, in ConstructJob()
6069 options::OPT_fno_openmp, false) && in ConstructJob()
6081 if (!Args.hasFlag(options::OPT_fopenmp_use_tls, in ConstructJob()
6082 options::OPT_fnoopenmp_use_tls, /*Default=*/true)) in ConstructJob()
6084 Args.AddLastArg(CmdArgs, options::OPT_fopenmp_simd, in ConstructJob()
6085 options::OPT_fno_openmp_simd); in ConstructJob()
6086 Args.AddAllArgs(CmdArgs, options::OPT_fopenmp_enable_irbuilder); in ConstructJob()
6087 Args.AddAllArgs(CmdArgs, options::OPT_fopenmp_version_EQ); in ConstructJob()
6088 if (!Args.hasFlag(options::OPT_fopenmp_extensions, in ConstructJob()
6089 options::OPT_fno_openmp_extensions, /*Default=*/true)) in ConstructJob()
6091 Args.AddAllArgs(CmdArgs, options::OPT_fopenmp_cuda_number_of_sm_EQ); in ConstructJob()
6092 Args.AddAllArgs(CmdArgs, options::OPT_fopenmp_cuda_blocks_per_sm_EQ); in ConstructJob()
6094 options::OPT_fopenmp_cuda_teams_reduction_recs_num_EQ); in ConstructJob()
6095 if (Args.hasFlag(options::OPT_fopenmp_optimistic_collapse, in ConstructJob()
6096 options::OPT_fno_openmp_optimistic_collapse, in ConstructJob()
6102 if (Args.hasFlag(options::OPT_fopenmp_cuda_mode, in ConstructJob()
6103 options::OPT_fno_openmp_cuda_mode, /*Default=*/false)) in ConstructJob()
6107 Args.AddAllArgs(CmdArgs, options::OPT_fopenmp_target_debug_EQ); in ConstructJob()
6108 if (Args.hasFlag(options::OPT_fopenmp_target_debug, in ConstructJob()
6109 options::OPT_fno_openmp_target_debug, /*Default=*/false)) in ConstructJob()
6114 if (Args.hasFlag(options::OPT_fopenmp_cuda_force_full_runtime, in ConstructJob()
6115 options::OPT_fno_openmp_cuda_force_full_runtime, in ConstructJob()
6121 if (Args.hasFlag(options::OPT_fopenmp_assume_teams_oversubscription, in ConstructJob()
6122 options::OPT_fno_openmp_assume_teams_oversubscription, in ConstructJob()
6125 if (Args.hasFlag(options::OPT_fopenmp_assume_threads_oversubscription, in ConstructJob()
6126 options::OPT_fno_openmp_assume_threads_oversubscription, in ConstructJob()
6129 if (Args.hasArg(options::OPT_fopenmp_assume_no_thread_state)) in ConstructJob()
6131 if (Args.hasArg(options::OPT_fopenmp_offload_mandatory)) in ConstructJob()
6144 Args.AddLastArg(CmdArgs, options::OPT_fopenmp_simd, in ConstructJob()
6145 options::OPT_fno_openmp_simd); in ConstructJob()
6146 Args.AddAllArgs(CmdArgs, options::OPT_fopenmp_version_EQ); in ConstructJob()
6147 Args.addOptOutFlag(CmdArgs, options::OPT_fopenmp_extensions, in ConstructJob()
6148 options::OPT_fno_openmp_extensions); in ConstructJob()
6152 if (Args.hasArg(options::OPT_offload_new_driver)) in ConstructJob()
6161 Args.getAllArgValues(options::OPT_fprofile_list_EQ)) { in ConstructJob()
6168 if (Arg *A = Args.getLastArg(options::OPT_fpatchable_function_entry_EQ)) { in ConstructJob()
6188 Args.AddLastArg(CmdArgs, options::OPT_fms_hotpatch); in ConstructJob()
6191 Args.AddLastArg(CmdArgs, options::OPT_pg); in ConstructJob()
6194 if (Arg *A = Args.getLastArg(options::OPT_mfentry)) { in ConstructJob()
6201 if (Arg *A = Args.getLastArg(options::OPT_mnop_mcount)) { in ConstructJob()
6208 if (Arg *A = Args.getLastArg(options::OPT_mrecord_mcount)) { in ConstructJob()
6217 if (Args.getLastArg(options::OPT_fapple_kext) || in ConstructJob()
6218 (Args.hasArg(options::OPT_mkernel) && types::isCXX(InputType))) in ConstructJob()
6221 Args.AddLastArg(CmdArgs, options::OPT_altivec_src_compat); in ConstructJob()
6222 Args.AddLastArg(CmdArgs, options::OPT_flax_vector_conversions_EQ); in ConstructJob()
6223 Args.AddLastArg(CmdArgs, options::OPT_fobjc_sender_dependent_dispatch); in ConstructJob()
6224 Args.AddLastArg(CmdArgs, options::OPT_fdiagnostics_print_source_range_info); in ConstructJob()
6225 Args.AddLastArg(CmdArgs, options::OPT_fdiagnostics_parseable_fixits); in ConstructJob()
6226 Args.AddLastArg(CmdArgs, options::OPT_ftime_report); in ConstructJob()
6227 Args.AddLastArg(CmdArgs, options::OPT_ftime_report_EQ); in ConstructJob()
6228 Args.AddLastArg(CmdArgs, options::OPT_ftime_trace); in ConstructJob()
6229 Args.AddLastArg(CmdArgs, options::OPT_ftime_trace_granularity_EQ); in ConstructJob()
6230 Args.AddLastArg(CmdArgs, options::OPT_ftime_trace_EQ); in ConstructJob()
6231 Args.AddLastArg(CmdArgs, options::OPT_ftrapv); in ConstructJob()
6232 Args.AddLastArg(CmdArgs, options::OPT_malign_double); in ConstructJob()
6233 Args.AddLastArg(CmdArgs, options::OPT_fno_temp_file); in ConstructJob()
6235 if (Arg *A = Args.getLastArg(options::OPT_ftrapv_handler_EQ)) { in ConstructJob()
6240 Args.AddLastArg(CmdArgs, options::OPT_ftrap_function_EQ); in ConstructJob()
6244 if (Arg *A = Args.getLastArg(options::OPT_fwrapv, options::OPT_fno_wrapv)) { in ConstructJob()
6245 if (A->getOption().matches(options::OPT_fwrapv)) in ConstructJob()
6247 } else if (Arg *A = Args.getLastArg(options::OPT_fstrict_overflow, in ConstructJob()
6248 options::OPT_fno_strict_overflow)) { in ConstructJob()
6249 if (A->getOption().matches(options::OPT_fno_strict_overflow)) in ConstructJob()
6253 if (Arg *A = Args.getLastArg(options::OPT_freroll_loops, in ConstructJob()
6254 options::OPT_fno_reroll_loops)) in ConstructJob()
6255 if (A->getOption().matches(options::OPT_freroll_loops)) in ConstructJob()
6258 Args.AddLastArg(CmdArgs, options::OPT_ffinite_loops, in ConstructJob()
6259 options::OPT_fno_finite_loops); in ConstructJob()
6261 Args.AddLastArg(CmdArgs, options::OPT_fwritable_strings); in ConstructJob()
6262 Args.AddLastArg(CmdArgs, options::OPT_funroll_loops, in ConstructJob()
6263 options::OPT_fno_unroll_loops); in ConstructJob()
6265 Args.AddLastArg(CmdArgs, options::OPT_fstrict_flex_arrays_EQ); in ConstructJob()
6267 Args.AddLastArg(CmdArgs, options::OPT_pthread); in ConstructJob()
6269 if (Args.hasFlag(options::OPT_mspeculative_load_hardening, in ConstructJob()
6270 options::OPT_mno_speculative_load_hardening, false)) in ConstructJob()
6277 Args.AddLastArg(CmdArgs, options::OPT_fswift_async_fp_EQ); in ConstructJob()
6280 if (Args.hasFlag(options::OPT_mstackrealign, options::OPT_mno_stackrealign, in ConstructJob()
6284 if (Args.hasArg(options::OPT_mstack_alignment)) { in ConstructJob()
6285 StringRef alignment = Args.getLastArgValue(options::OPT_mstack_alignment); in ConstructJob()
6289 if (Args.hasArg(options::OPT_mstack_probe_size)) { in ConstructJob()
6290 StringRef Size = Args.getLastArgValue(options::OPT_mstack_probe_size); in ConstructJob()
6298 Args.addOptOutFlag(CmdArgs, options::OPT_mstack_arg_probe, in ConstructJob()
6299 options::OPT_mno_stack_arg_probe); in ConstructJob()
6301 if (Arg *A = Args.getLastArg(options::OPT_mrestrict_it, in ConstructJob()
6302 options::OPT_mno_restrict_it)) { in ConstructJob()
6303 if (A->getOption().matches(options::OPT_mrestrict_it)) { in ConstructJob()
6320 if (Args.hasFlag(options::OPT_fhip_new_launch_api, in ConstructJob()
6321 options::OPT_fno_hip_new_launch_api, true)) in ConstructJob()
6323 if (Args.hasFlag(options::OPT_fgpu_allow_device_init, in ConstructJob()
6324 options::OPT_fno_gpu_allow_device_init, false)) in ConstructJob()
6326 Args.addOptInFlag(CmdArgs, options::OPT_fhip_kernel_arg_name, in ConstructJob()
6327 options::OPT_fno_hip_kernel_arg_name); in ConstructJob()
6333 if (Args.hasFlag(options::OPT_fgpu_defer_diag, in ConstructJob()
6334 options::OPT_fno_gpu_defer_diag, false)) in ConstructJob()
6336 if (Args.hasFlag(options::OPT_fgpu_exclude_wrong_side_overloads, in ConstructJob()
6337 options::OPT_fno_gpu_exclude_wrong_side_overloads, in ConstructJob()
6345 if (Args.hasArg(options::OPT_nogpulib)) in ConstructJob()
6348 if (Arg *A = Args.getLastArg(options::OPT_fcf_protection_EQ)) { in ConstructJob()
6354 Args.AddLastArg(CmdArgs, options::OPT_mibt_seal); in ConstructJob()
6356 if (Arg *A = Args.getLastArg(options::OPT_mfunction_return_EQ)) in ConstructJob()
6366 options::OPT_fprofile_generate, options::OPT_fprofile_generate_EQ, in ConstructJob()
6367 options::OPT_fcs_profile_generate, in ConstructJob()
6368 options::OPT_fcs_profile_generate_EQ, options::OPT_fprofile_use, in ConstructJob()
6369 options::OPT_fprofile_use_EQ); in ConstructJob()
6380 Args.AddLastArg(CmdArgs, options::OPT_fprofile_remapping_file_EQ); in ConstructJob()
6382 if (Args.hasFlag(options::OPT_fpseudo_probe_for_profiling, in ConstructJob()
6383 options::OPT_fno_pseudo_probe_for_profiling, false)) { in ConstructJob()
6387 if (Args.hasFlag(options::OPT_funique_internal_linkage_names, in ConstructJob()
6388 options::OPT_fno_unique_internal_linkage_names, true)) in ConstructJob()
6394 Args.addOptOutFlag(CmdArgs, options::OPT_fassume_sane_operator_new, in ConstructJob()
6395 options::OPT_fno_assume_sane_operator_new); in ConstructJob()
6398 if (Args.hasFlag(options::OPT_fblocks, options::OPT_fno_blocks, in ConstructJob()
6400 (Args.hasArg(options::OPT_fgnu_runtime) && in ConstructJob()
6401 Args.hasArg(options::OPT_fobjc_nonfragile_abi) && in ConstructJob()
6402 !Args.hasArg(options::OPT_fno_blocks))) { in ConstructJob()
6405 if (!Args.hasArg(options::OPT_fgnu_runtime) && !TC.hasBlocksRuntime()) in ConstructJob()
6413 if (Args.hasFlag(options::OPT_fcoroutines_ts, options::OPT_fno_coroutines_ts, in ConstructJob()
6419 Args.AddLastArg(CmdArgs, options::OPT_fdouble_square_bracket_attributes, in ConstructJob()
6420 options::OPT_fno_double_square_bracket_attributes); in ConstructJob()
6422 Args.addOptOutFlag(CmdArgs, options::OPT_faccess_control, in ConstructJob()
6423 options::OPT_fno_access_control); in ConstructJob()
6424 Args.addOptOutFlag(CmdArgs, options::OPT_felide_constructors, in ConstructJob()
6425 options::OPT_fno_elide_constructors); in ConstructJob()
6434 if (Args.hasFlag(options::OPT_fshort_enums, options::OPT_fno_short_enums, in ConstructJob()
6442 options::OPT_fuse_cxa_atexit, options::OPT_fno_use_cxa_atexit, in ConstructJob()
6449 if (Args.hasFlag(options::OPT_fregister_global_dtors_with_atexit, in ConstructJob()
6450 options::OPT_fno_register_global_dtors_with_atexit, in ConstructJob()
6454 Args.addOptInFlag(CmdArgs, options::OPT_fuse_line_directives, in ConstructJob()
6455 options::OPT_fno_use_line_directives); in ConstructJob()
6458 if (Args.hasFlag(options::OPT_fminimize_whitespace, in ConstructJob()
6459 options::OPT_fno_minimize_whitespace, false)) { in ConstructJob()
6468 if (Args.hasFlag(options::OPT_fms_extensions, options::OPT_fno_ms_extensions, in ConstructJob()
6474 options::OPT_fms_compatibility, options::OPT_fno_ms_compatibility, in ConstructJob()
6475 (IsWindowsMSVC && Args.hasFlag(options::OPT_fms_extensions, in ConstructJob()
6476 options::OPT_fno_ms_extensions, true))); in ConstructJob()
6482 if (Arg *A = Args.getLastArg(options::OPT_fgnuc_version_EQ)) { in ConstructJob()
6511 if (const Arg *StdArg = Args.getLastArg(options::OPT__SLASH_std)) { in ConstructJob()
6525 if (const Arg *StdArg = Args.getLastArg(options::OPT__SLASH_std)) { in ConstructJob()
6548 Args.addOptInFlag(CmdArgs, options::OPT_fborland_extensions, in ConstructJob()
6549 options::OPT_fno_borland_extensions); in ConstructJob()
6552 if (Args.hasFlag(options::OPT_fdeclspec, options::OPT_fno_declspec, in ConstructJob()
6555 else if (Args.hasArg(options::OPT_fno_declspec)) in ConstructJob()
6560 if (!Args.hasFlag(options::OPT_fthreadsafe_statics, in ConstructJob()
6561 options::OPT_fno_threadsafe_statics, in ConstructJob()
6570 if (Args.hasFlag(options::OPT_fdelayed_template_parsing, in ConstructJob()
6571 options::OPT_fno_delayed_template_parsing, IsWindowsMSVC)) in ConstructJob()
6576 Args.AddLastArg(CmdArgs, options::OPT_fgnu_keywords, in ConstructJob()
6577 options::OPT_fno_gnu_keywords); in ConstructJob()
6579 Args.addOptInFlag(CmdArgs, options::OPT_fgnu89_inline, in ConstructJob()
6580 options::OPT_fno_gnu89_inline); in ConstructJob()
6582 const Arg *InlineArg = Args.getLastArg(options::OPT_finline_functions, in ConstructJob()
6583 options::OPT_finline_hint_functions, in ConstructJob()
6584 options::OPT_fno_inline_functions); in ConstructJob()
6585 if (Arg *A = Args.getLastArg(options::OPT_finline, options::OPT_fno_inline)) { in ConstructJob()
6586 if (A->getOption().matches(options::OPT_fno_inline)) in ConstructJob()
6599 if (Args.hasFlag(options::OPT_fpch_validate_input_files_content, in ConstructJob()
6600 options::OPT_fno_pch_validate_input_files_content, false)) in ConstructJob()
6602 if (Args.hasFlag(options::OPT_fpch_instantiate_templates, in ConstructJob()
6603 options::OPT_fno_pch_instantiate_templates, false)) in ConstructJob()
6605 if (Args.hasFlag(options::OPT_fpch_codegen, options::OPT_fno_pch_codegen, in ConstructJob()
6608 if (Args.hasFlag(options::OPT_fpch_debuginfo, options::OPT_fno_pch_debuginfo, in ConstructJob()
6620 Args.hasFlag(options::OPT_fobjc_encode_cxx_class_template_spec, in ConstructJob()
6621 options::OPT_fno_objc_encode_cxx_class_template_spec, in ConstructJob()
6625 if (Args.hasFlag(options::OPT_fapplication_extension, in ConstructJob()
6626 options::OPT_fno_application_extension, false)) in ConstructJob()
6636 options::OPT_fsjlj_exceptions, options::OPT_fseh_exceptions, in ConstructJob()
6637 options::OPT_fdwarf_exceptions, options::OPT_fwasm_exceptions); in ConstructJob()
6640 if (Opt.matches(options::OPT_fsjlj_exceptions)) in ConstructJob()
6642 if (Opt.matches(options::OPT_fseh_exceptions)) in ConstructJob()
6644 if (Opt.matches(options::OPT_fdwarf_exceptions)) in ConstructJob()
6646 if (Opt.matches(options::OPT_fwasm_exceptions)) in ConstructJob()
6665 Args.addOptOutFlag(CmdArgs, options::OPT_fassume_sane_operator_new, in ConstructJob()
6666 options::OPT_fno_assume_sane_operator_new); in ConstructJob()
6671 Args.addOptInFlag(CmdArgs, options::OPT_frelaxed_template_template_args, in ConstructJob()
6672 options::OPT_fno_relaxed_template_template_args); in ConstructJob()
6676 Args.addOptInFlag(CmdArgs, options::OPT_fsized_deallocation, in ConstructJob()
6677 options::OPT_fno_sized_deallocation); in ConstructJob()
6681 if (Arg *A = Args.getLastArg(options::OPT_faligned_allocation, in ConstructJob()
6682 options::OPT_fno_aligned_allocation, in ConstructJob()
6683 options::OPT_faligned_new_EQ)) { in ConstructJob()
6684 if (A->getOption().matches(options::OPT_fno_aligned_allocation)) in ConstructJob()
6692 if (Arg *A = Args.getLastArg(options::OPT_fnew_alignment_EQ, in ConstructJob()
6693 options::OPT_faligned_new_EQ)) in ConstructJob()
6699 if (!Args.hasFlag(options::OPT_fconstant_cfstrings, in ConstructJob()
6700 options::OPT_fno_constant_cfstrings, true) || in ConstructJob()
6701 !Args.hasFlag(options::OPT_mconstant_cfstrings, in ConstructJob()
6702 options::OPT_mno_constant_cfstrings, true)) in ConstructJob()
6705 Args.addOptInFlag(CmdArgs, options::OPT_fpascal_strings, in ConstructJob()
6706 options::OPT_fno_pascal_strings); in ConstructJob()
6710 if (Arg *A = Args.getLastArg(options::OPT_fpack_struct_EQ)) { in ConstructJob()
6714 } else if (Args.hasFlag(options::OPT_fpack_struct, in ConstructJob()
6715 options::OPT_fno_pack_struct, false)) { in ConstructJob()
6720 bool SkipMaxTypeAlign = Args.hasArg(options::OPT_fno_max_type_align); in ConstructJob()
6721 if (Arg *A = Args.getLastArg(options::OPT_fmax_type_align_EQ)) { in ConstructJob()
6734 if (!Args.hasFlag(options::OPT_Qy, options::OPT_Qn, true)) in ConstructJob()
6738 Args.addOptInFlag(CmdArgs, options::OPT_fcommon, options::OPT_fno_common); in ConstructJob()
6742 if (!Args.hasFlag(options::OPT_fsigned_bitfields, in ConstructJob()
6743 options::OPT_funsigned_bitfields, true)) in ConstructJob()
6745 << Args.getLastArg(options::OPT_funsigned_bitfields)->getAsString(Args); in ConstructJob()
6748 if (!Args.hasFlag(options::OPT_ffor_scope, options::OPT_fno_for_scope, true)) in ConstructJob()
6750 << Args.getLastArg(options::OPT_fno_for_scope)->getAsString(Args); in ConstructJob()
6753 if (Arg *inputCharset = Args.getLastArg(options::OPT_finput_charset_EQ)) { in ConstructJob()
6761 if (Arg *execCharset = Args.getLastArg(options::OPT_fexec_charset_EQ)) { in ConstructJob()
6770 Args.addOptInFlag(CmdArgs, options::OPT_fasm_blocks, in ConstructJob()
6771 options::OPT_fno_asm_blocks); in ConstructJob()
6774 if (!Args.hasFlag(options::OPT_fgnu_inline_asm, in ConstructJob()
6775 options::OPT_fno_gnu_inline_asm, true)) in ConstructJob()
6783 EnableVec ? options::OPT_O_Group : options::OPT_fvectorize; in ConstructJob()
6784 if (Args.hasFlag(options::OPT_fvectorize, VectorizeAliasOption, in ConstructJob()
6785 options::OPT_fno_vectorize, EnableVec)) in ConstructJob()
6791 EnableSLPVec ? options::OPT_O_Group : options::OPT_fslp_vectorize; in ConstructJob()
6792 if (Args.hasFlag(options::OPT_fslp_vectorize, SLPVectAliasOption, in ConstructJob()
6793 options::OPT_fno_slp_vectorize, EnableSLPVec)) in ConstructJob()
6798 Args.AddLastArg(CmdArgs, options::OPT_fshow_overloads_EQ); in ConstructJob()
6800 options::OPT_fsanitize_undefined_strip_path_components_EQ); in ConstructJob()
6804 if (Arg *A = Args.getLastArg(options::OPT_fdollars_in_identifiers, in ConstructJob()
6805 options::OPT_fno_dollars_in_identifiers)) { in ConstructJob()
6806 if (A->getOption().matches(options::OPT_fdollars_in_identifiers)) in ConstructJob()
6812 Args.addOptInFlag(CmdArgs, options::OPT_fapple_pragma_pack, in ConstructJob()
6813 options::OPT_fno_apple_pragma_pack); in ConstructJob()
6815 if (Args.hasFlag(options::OPT_fxl_pragma_pack, in ConstructJob()
6816 options::OPT_fno_xl_pragma_pack, RawTriple.isOSAIX())) in ConstructJob()
6823 bool RewriteImports = Args.hasFlag(options::OPT_frewrite_imports, in ConstructJob()
6824 options::OPT_fno_rewrite_imports, false); in ConstructJob()
6828 if (Args.hasFlag(options::OPT_fdirectives_only, in ConstructJob()
6829 options::OPT_fno_directives_only, false)) in ConstructJob()
6836 if (Args.hasFlag(options::OPT_frewrite_includes, in ConstructJob()
6837 options::OPT_fno_rewrite_includes, false) || in ConstructJob()
6842 if (Arg *A = Args.getLastArg(options::OPT_traditional, in ConstructJob()
6843 options::OPT_traditional_cpp)) { in ConstructJob()
6850 Args.AddLastArg(CmdArgs, options::OPT_dM); in ConstructJob()
6851 Args.AddLastArg(CmdArgs, options::OPT_dD); in ConstructJob()
6852 Args.AddLastArg(CmdArgs, options::OPT_dI); in ConstructJob()
6854 Args.AddLastArg(CmdArgs, options::OPT_fmax_tokens_EQ); in ConstructJob()
6857 if (Arg *A = Args.getLastArg(options::OPT__serialize_diags)) { in ConstructJob()
6862 if (Args.hasArg(options::OPT_fretain_comments_from_system_headers)) in ConstructJob()
6866 Args.AddAllArgs(CmdArgs, options::OPT_fcomment_block_commands); in ConstructJob()
6868 Args.AddAllArgs(CmdArgs, options::OPT_fparse_all_comments); in ConstructJob()
6871 for (const Arg *A : Args.filtered(options::OPT_fplugin_EQ)) { in ConstructJob()
6885 for (const Arg *A : Args.filtered(options::OPT_fplugin_arg)) { in ConstructJob()
6907 for (const Arg *A : Args.filtered(options::OPT_fpass_plugin_EQ)) { in ConstructJob()
6924 for (auto Arg : Args.filtered(options::OPT_Xclang)) { in ConstructJob()
6931 Args.AddAllArgValues(CmdArgs, options::OPT_Xclang); in ConstructJob()
6933 for (const Arg *A : Args.filtered(options::OPT_mllvm)) { in ConstructJob()
6960 Args.AddAllArgs(CmdArgs, options::OPT_undef); in ConstructJob()
6970 Args.hasFlag(options::OPT_grecord_command_line, in ConstructJob()
6971 options::OPT_gno_record_command_line, false); in ConstructJob()
6973 Args.hasFlag(options::OPT_frecord_command_line, in ConstructJob()
6974 options::OPT_fno_record_command_line, false); in ConstructJob()
6977 << Args.getLastArg(options::OPT_frecord_command_line)->getAsString(Args) in ConstructJob()
7022 if (Args.hasFlag(options::OPT_fcuda_short_ptr, in ConstructJob()
7023 options::OPT_fno_cuda_short_ptr, false)) in ConstructJob()
7041 Args.AddLastArg(CmdArgs, options::OPT_fgpu_default_stream_EQ); in ConstructJob()
7046 Args.getLastArgValue(options::OPT_fgpu_inline_threshold_EQ); in ConstructJob()
7070 Args.addOptInFlag(CmdArgs, options::OPT_munsafe_fp_atomics, in ConstructJob()
7071 options::OPT_mno_unsafe_fp_atomics); in ConstructJob()
7087 Args.hasFlag(options::OPT_fvirtual_function_elimination, in ConstructJob()
7088 options::OPT_fno_virtual_function_elimination, false); in ConstructJob()
7102 options::OPT_fwhole_program_vtables, in ConstructJob()
7103 options::OPT_fno_whole_program_vtables, VirtualFunctionElimination); in ConstructJob()
7128 Args.hasFlag(options::OPT_fsplit_lto_unit, in ConstructJob()
7129 options::OPT_fno_split_lto_unit, DefaultsSplitLTOUnit); in ConstructJob()
7136 if (Arg *A = Args.getLastArg(options::OPT_fglobal_isel, in ConstructJob()
7137 options::OPT_fno_global_isel)) { in ConstructJob()
7139 if (A->getOption().matches(options::OPT_fglobal_isel)) { in ConstructJob()
7148 Arg *A = Args.getLastArg(options::OPT_O_Group); in ConstructJob()
7150 if (!A || A->getOption().matches(options::OPT_O0)) in ConstructJob()
7167 if (Args.hasArg(options::OPT_forder_file_instrumentation)) { in ConstructJob()
7178 if (Arg *A = Args.getLastArg(options::OPT_fforce_enable_int128, in ConstructJob()
7179 options::OPT_fno_force_enable_int128)) { in ConstructJob()
7180 if (A->getOption().matches(options::OPT_fforce_enable_int128)) in ConstructJob()
7184 Args.addOptInFlag(CmdArgs, options::OPT_fkeep_static_consts, in ConstructJob()
7185 options::OPT_fno_keep_static_consts); in ConstructJob()
7186 Args.addOptInFlag(CmdArgs, options::OPT_fcomplete_member_pointers, in ConstructJob()
7187 options::OPT_fno_complete_member_pointers); in ConstructJob()
7189 if (!Args.hasFlag(options::OPT_fcxx_static_destructors, in ConstructJob()
7190 options::OPT_fno_cxx_static_destructors, true)) in ConstructJob()
7195 if (Arg *A = Args.getLastArg(options::OPT_moutline_atomics, in ConstructJob()
7196 options::OPT_mno_outline_atomics)) { in ConstructJob()
7202 if (A->getOption().matches(options::OPT_moutline_atomics)) { in ConstructJob()
7216 if (Args.hasFlag(options::OPT_faddrsig, options::OPT_fno_addrsig, in ConstructJob()
7230 if (Arg *A = Args.getLastArg(options::OPT_fsymbol_partition_EQ)) { in ConstructJob()
7292 Args.hasFlag(options::OPT__SLASH_showFilenames, in ConstructJob()
7293 options::OPT__SLASH_showFilenames_, false)) { in ConstructJob()
7297 if (Arg *A = Args.getLastArg(options::OPT_pg)) in ConstructJob()
7299 !Args.hasArg(options::OPT_mfentry)) in ConstructJob()
7307 Args.ClaimAllArgs(options::OPT_fpch_preprocess); in ConstructJob()
7311 Args.ClaimAllArgs(options::OPT_clang_ignored_f_Group); in ConstructJob()
7312 Args.ClaimAllArgs(options::OPT_clang_ignored_m_Group); in ConstructJob()
7315 Args.ClaimAllArgs(options::OPT_emit_llvm); in ConstructJob()
7335 args.getLastArg(options::OPT_fnext_runtime, options::OPT_fgnu_runtime, in AddObjCRuntimeArgs()
7336 options::OPT_fobjc_runtime_EQ); in AddObjCRuntimeArgs()
7341 runtimeArg->getOption().matches(options::OPT_fobjc_runtime_EQ)) { in AddObjCRuntimeArgs()
7368 if (Arg *abiArg = args.getLastArg(options::OPT_fobjc_abi_version_EQ)) { in AddObjCRuntimeArgs()
7384 if (args.hasFlag(options::OPT_fobjc_nonfragile_abi, in AddObjCRuntimeArgs()
7385 options::OPT_fno_objc_nonfragile_abi, in AddObjCRuntimeArgs()
7395 args.getLastArg(options::OPT_fobjc_nonfragile_abi_version_EQ)) { in AddObjCRuntimeArgs()
7433 } else if (runtimeArg->getOption().matches(options::OPT_fnext_runtime)) { in AddObjCRuntimeArgs()
7445 assert(runtimeArg->getOption().matches(options::OPT_fgnu_runtime)); in AddObjCRuntimeArgs()
7487 Args.getAllArgValues(options::OPT__SLASH_EH); in parseClangCLEHFlags()
7514 Args.hasFlag(options::OPT__SLASH_GX, options::OPT__SLASH_GX_, in parseClangCLEHFlags()
7520 if (Args.hasArg(options::OPT__SLASH_kernel)) { in parseClangCLEHFlags()
7533 unsigned RTOptionID = options::OPT__SLASH_MT; in AddClangCLArgs()
7536 if (Args.hasArg(options::OPT__SLASH_LDd)) in AddClangCLArgs()
7539 RTOptionID = options::OPT__SLASH_MTd; in AddClangCLArgs()
7541 if (Arg *A = Args.getLastArg(options::OPT__SLASH_M_Group)) in AddClangCLArgs()
7546 case options::OPT__SLASH_MD: in AddClangCLArgs()
7547 if (Args.hasArg(options::OPT__SLASH_LDd)) in AddClangCLArgs()
7553 case options::OPT__SLASH_MDd: in AddClangCLArgs()
7559 case options::OPT__SLASH_MT: in AddClangCLArgs()
7560 if (Args.hasArg(options::OPT__SLASH_LDd)) in AddClangCLArgs()
7566 case options::OPT__SLASH_MTd: in AddClangCLArgs()
7576 if (Args.hasArg(options::OPT__SLASH_Zl)) { in AddClangCLArgs()
7588 Args.getLastArg(options::OPT__SLASH_showIncludes, in AddClangCLArgs()
7589 options::OPT__SLASH_showIncludes_user)) { in AddClangCLArgs()
7591 if (ShowIncludes->getOption().matches(options::OPT__SLASH_showIncludes)) in AddClangCLArgs()
7596 if (Args.hasFlag(options::OPT__SLASH_GR_, options::OPT__SLASH_GR, in AddClangCLArgs()
7602 if (!isNVPTX && Args.hasFlag(options::OPT__SLASH_GS, options::OPT__SLASH_GS_, in AddClangCLArgs()
7609 if (Arg *DebugInfoArg = Args.getLastArg(options::OPT__SLASH_Z7, in AddClangCLArgs()
7610 options::OPT_gline_tables_only)) { in AddClangCLArgs()
7612 if (DebugInfoArg->getOption().matches(options::OPT__SLASH_Z7)) in AddClangCLArgs()
7623 if (Args.hasFlag(options::OPT__SLASH_JMC, options::OPT__SLASH_JMC_, in AddClangCLArgs()
7642 if (Args.hasArg(options::OPT__SLASH_EP)) { in AddClangCLArgs()
7649 VolatileOptionID = options::OPT__SLASH_volatile_ms; in AddClangCLArgs()
7651 VolatileOptionID = options::OPT__SLASH_volatile_iso; in AddClangCLArgs()
7653 if (Arg *A = Args.getLastArg(options::OPT__SLASH_volatile_Group)) in AddClangCLArgs()
7656 if (VolatileOptionID == options::OPT__SLASH_volatile_ms) in AddClangCLArgs()
7659 if (Args.hasFlag(options::OPT__SLASH_Zc_dllexportInlines_, in AddClangCLArgs()
7660 options::OPT__SLASH_Zc_dllexportInlines, in AddClangCLArgs()
7665 if (Args.hasFlag(options::OPT__SLASH_Zc_wchar_t_, in AddClangCLArgs()
7666 options::OPT__SLASH_Zc_wchar_t, false)) { in AddClangCLArgs()
7670 if (Args.hasArg(options::OPT__SLASH_kernel)) { in AddClangCLArgs()
7673 Args.getAllArgValues(options::OPT__SLASH_arch); in AddClangCLArgs()
7686 if (Args.hasFlag(options::OPT__SLASH_GR, options::OPT__SLASH_GR_, false)) in AddClangCLArgs()
7691 Arg *MostGeneralArg = Args.getLastArg(options::OPT__SLASH_vmg); in AddClangCLArgs()
7692 Arg *BestCaseArg = Args.getLastArg(options::OPT__SLASH_vmb); in AddClangCLArgs()
7698 Arg *SingleArg = Args.getLastArg(options::OPT__SLASH_vms); in AddClangCLArgs()
7699 Arg *MultipleArg = Args.getLastArg(options::OPT__SLASH_vmm); in AddClangCLArgs()
7700 Arg *VirtualArg = Args.getLastArg(options::OPT__SLASH_vmv); in AddClangCLArgs()
7719 Args.getLastArg(options::OPT__SLASH_Gd, options::OPT__SLASH_Gr, in AddClangCLArgs()
7720 options::OPT__SLASH_Gz, options::OPT__SLASH_Gv, in AddClangCLArgs()
7721 options::OPT__SLASH_Gregcall)) { in AddClangCLArgs()
7727 case options::OPT__SLASH_Gd: in AddClangCLArgs()
7730 case options::OPT__SLASH_Gr: in AddClangCLArgs()
7734 case options::OPT__SLASH_Gz: in AddClangCLArgs()
7738 case options::OPT__SLASH_Gv: in AddClangCLArgs()
7742 case options::OPT__SLASH_Gregcall: in AddClangCLArgs()
7753 Args.AddLastArg(CmdArgs, options::OPT_vtordisp_mode_EQ); in AddClangCLArgs()
7755 if (!Args.hasArg(options::OPT_fdiagnostics_format_EQ)) { in AddClangCLArgs()
7760 if (Args.hasArg(options::OPT__SLASH_kernel)) in AddClangCLArgs()
7763 if (Arg *A = Args.getLastArg(options::OPT__SLASH_guard)) { in AddClangCLArgs()
7804 if (Arg *OutputOpt = Args.getLastArg(options::OPT_o)) { in getDependencyFileName()
7831 if (Arg *A = Args.getLastArg(options::OPT_masm_EQ)) { in AddX86TargetArgs()
7868 Args.ClaimAllArgs(options::OPT_w); in ConstructJob()
7870 Args.ClaimAllArgs(options::OPT_emit_llvm); in ConstructJob()
7908 (void)Args.hasArg(options::OPT_force__cpusubtype__ALL); in ConstructJob()
7911 Args.AddAllArgs(CmdArgs, options::OPT_I_Group); in ConstructJob()
7926 Args.ClaimAllArgs(options::OPT_g_Group); in ConstructJob()
7927 if (Arg *A = Args.getLastArg(options::OPT_g_Group)) in ConstructJob()
7928 WantDebug = !A->getOption().matches(options::OPT_g0) && in ConstructJob()
7929 !A->getOption().matches(options::OPT_ggdb0); in ConstructJob()
7962 Args.AddAllArgs(CmdArgs, options::OPT_I); in ConstructJob()
8028 if (Args.hasFlag(options::OPT_mdefault_build_attributes, in ConstructJob()
8029 options::OPT_mno_default_build_attributes, true)) { in ConstructJob()
8038 if (Args.hasArg(options::OPT_mmark_bti_property)) { in ConstructJob()
8055 Args.ClaimAllArgs(options::OPT_W_Group); in ConstructJob()
8060 Args.AddAllArgs(CmdArgs, options::OPT_mllvm); in ConstructJob()
8358 : TCArgs.getLastArgValue(options::OPT_march_EQ); in ConstructJob()
8420 if (!TC->getTriple().isAMDGPU() || Args.hasArg(options::OPT_nogpulib)) in ConstructJob()
8424 StringRef Arch = TCArgs.getLastArgValue(options::OPT_march_EQ); in ConstructJob()
8439 if (const Arg *A = Args.getLastArg(options::OPT_O_Group)) { in ConstructJob()
8441 if (A->getOption().matches(options::OPT_O4) || in ConstructJob()
8442 A->getOption().matches(options::OPT_Ofast)) in ConstructJob()
8444 else if (A->getOption().matches(options::OPT_O)) { in ConstructJob()
8450 } else if (A->getOption().matches(options::OPT_O0)) in ConstructJob()
8459 if (Args.hasArg(options::OPT_v)) in ConstructJob()
8462 if (const Arg *A = Args.getLastArg(options::OPT_g_Group)) { in ConstructJob()
8463 if (!A->getOption().matches(options::OPT_g0)) in ConstructJob()
8467 for (const auto &A : Args.getAllArgValues(options::OPT_Xcuda_ptxas)) in ConstructJob()
8471 if (const Arg *A = Args.getLastArg(options::OPT_Rpass_EQ)) in ConstructJob()
8474 if (const Arg *A = Args.getLastArg(options::OPT_Rpass_missed_EQ)) in ConstructJob()
8477 if (const Arg *A = Args.getLastArg(options::OPT_Rpass_analysis_EQ)) in ConstructJob()
8480 if (Args.getLastArg(options::OPT_save_temps_EQ)) in ConstructJob()
8488 for (Arg *A : Args.filtered(options::OPT_Xoffload_linker)) { in ConstructJob()
8499 Args.ClaimAllArgs(options::OPT_Xoffload_linker); in ConstructJob()
8502 for (Arg *A : Args.filtered(options::OPT_mllvm)) { in ConstructJob()