Lines Matching refs:Args
958 static unsigned getOptimizationLevel(ArgList &Args, InputKind IK, in getOptimizationLevel() argument
961 if (IK == IK_OpenCL && !Args.hasArg(OPT_cl_opt_disable)) in getOptimizationLevel()
964 if (Arg *A = Args.getLastArg(options::OPT_O_Group)) { in getOptimizationLevel()
970 llvm::StringRef S(A->getValue(Args)); in getOptimizationLevel()
974 return Args.getLastArgIntValue(OPT_O, DefaultOpt, Diags); in getOptimizationLevel()
980 static unsigned getOptimizationLevelSize(ArgList &Args, InputKind IK, in getOptimizationLevelSize() argument
982 if (Arg *A = Args.getLastArg(options::OPT_O_Group)) { in getOptimizationLevelSize()
984 switch (A->getValue(Args)[0]) { in getOptimizationLevelSize()
997 static void addWarningArgs(ArgList &Args, std::vector<std::string> &Warnings) { in addWarningArgs() argument
998 for (arg_iterator I = Args.filtered_begin(OPT_W_Group), in addWarningArgs()
999 E = Args.filtered_end(); I != E; ++I) { in addWarningArgs()
1008 StringRef V = A->getValue(Args, Idx); in addWarningArgs()
1020 static bool ParseAnalyzerArgs(AnalyzerOptions &Opts, ArgList &Args, in ParseAnalyzerArgs() argument
1024 if (Arg *A = Args.getLastArg(OPT_analyzer_store)) { in ParseAnalyzerArgs()
1025 StringRef Name = A->getValue(Args); in ParseAnalyzerArgs()
1033 << A->getAsString(Args) << Name; in ParseAnalyzerArgs()
1040 if (Arg *A = Args.getLastArg(OPT_analyzer_constraints)) { in ParseAnalyzerArgs()
1041 StringRef Name = A->getValue(Args); in ParseAnalyzerArgs()
1049 << A->getAsString(Args) << Name; in ParseAnalyzerArgs()
1056 if (Arg *A = Args.getLastArg(OPT_analyzer_output)) { in ParseAnalyzerArgs()
1057 StringRef Name = A->getValue(Args); in ParseAnalyzerArgs()
1065 << A->getAsString(Args) << Name; in ParseAnalyzerArgs()
1072 if (Arg *A = Args.getLastArg(OPT_analyzer_purge)) { in ParseAnalyzerArgs()
1073 StringRef Name = A->getValue(Args); in ParseAnalyzerArgs()
1081 << A->getAsString(Args) << Name; in ParseAnalyzerArgs()
1088 if (Arg *A = Args.getLastArg(OPT_analyzer_ipa)) { in ParseAnalyzerArgs()
1089 StringRef Name = A->getValue(Args); in ParseAnalyzerArgs()
1097 << A->getAsString(Args) << Name; in ParseAnalyzerArgs()
1104 if (Arg *A = Args.getLastArg(OPT_analyzer_inlining_mode)) { in ParseAnalyzerArgs()
1105 StringRef Name = A->getValue(Args); in ParseAnalyzerArgs()
1113 << A->getAsString(Args) << Name; in ParseAnalyzerArgs()
1120 Opts.ShowCheckerHelp = Args.hasArg(OPT_analyzer_checker_help); in ParseAnalyzerArgs()
1122 Args.hasArg(OPT_analyzer_viz_egraph_graphviz); in ParseAnalyzerArgs()
1124 Args.hasArg(OPT_analyzer_viz_egraph_ubigraph); in ParseAnalyzerArgs()
1125 Opts.NoRetryExhausted = Args.hasArg(OPT_analyzer_disable_retry_exhausted); in ParseAnalyzerArgs()
1126 Opts.AnalyzeAll = Args.hasArg(OPT_analyzer_opt_analyze_headers); in ParseAnalyzerArgs()
1127 Opts.AnalyzerDisplayProgress = Args.hasArg(OPT_analyzer_display_progress); in ParseAnalyzerArgs()
1129 Args.hasArg(OPT_analyzer_opt_analyze_nested_blocks); in ParseAnalyzerArgs()
1130 Opts.eagerlyAssumeBinOpBifurcation = Args.hasArg(OPT_analyzer_eagerly_assume); in ParseAnalyzerArgs()
1131 Opts.AnalyzeSpecificFunction = Args.getLastArgValue(OPT_analyze_function); in ParseAnalyzerArgs()
1132 Opts.UnoptimizedCFG = Args.hasArg(OPT_analysis_UnoptimizedCFG); in ParseAnalyzerArgs()
1133 Opts.TrimGraph = Args.hasArg(OPT_trim_egraph); in ParseAnalyzerArgs()
1134 Opts.MaxNodes = Args.getLastArgIntValue(OPT_analyzer_max_nodes, 150000,Diags); in ParseAnalyzerArgs()
1135 Opts.maxBlockVisitOnPath = Args.getLastArgIntValue(OPT_analyzer_max_loop, 4, Diags); in ParseAnalyzerArgs()
1136 Opts.eagerlyTrimExplodedGraph = !Args.hasArg(OPT_analyzer_no_eagerly_trim_egraph); in ParseAnalyzerArgs()
1137 Opts.PrintStats = Args.hasArg(OPT_analyzer_stats); in ParseAnalyzerArgs()
1139 Args.getLastArgIntValue(OPT_analyzer_inline_max_stack_depth, in ParseAnalyzerArgs()
1142 Args.getLastArgIntValue(OPT_analyzer_inline_max_function_size, in ParseAnalyzerArgs()
1146 for (arg_iterator it = Args.filtered_begin(OPT_analyzer_checker, in ParseAnalyzerArgs()
1148 ie = Args.filtered_end(); it != ie; ++it) { in ParseAnalyzerArgs()
1154 StringRef checkerList = A->getValue(Args); in ParseAnalyzerArgs()
1162 for (arg_iterator it = Args.filtered_begin(OPT_analyzer_config), in ParseAnalyzerArgs()
1163 ie = Args.filtered_end(); it != ie; ++it) { in ParseAnalyzerArgs()
1168 StringRef configList = A->getValue(Args); in ParseAnalyzerArgs()
1194 static bool ParseMigratorArgs(MigratorOptions &Opts, ArgList &Args) { in ParseMigratorArgs() argument
1195 Opts.NoNSAllocReallocError = Args.hasArg(OPT_migrator_no_nsalloc_error); in ParseMigratorArgs()
1196 Opts.NoFinalizeRemoval = Args.hasArg(OPT_migrator_no_finalize_removal); in ParseMigratorArgs()
1200 static bool ParseCodeGenArgs(CodeGenOptions &Opts, ArgList &Args, InputKind IK, in ParseCodeGenArgs() argument
1205 unsigned OptLevel = getOptimizationLevel(Args, IK, Diags); in ParseCodeGenArgs()
1208 << Args.getLastArg(OPT_O)->getAsString(Args) << OptLevel; in ParseCodeGenArgs()
1218 Opts.NoInline = Args.hasArg(OPT_fno_inline); in ParseCodeGenArgs()
1219 Opts.Inlining = Args.hasArg(OPT_fno_inline_functions) ? in ParseCodeGenArgs()
1222 if (Args.hasArg(OPT_gline_tables_only)) { in ParseCodeGenArgs()
1224 } else if (Args.hasArg(OPT_g_Flag)) { in ParseCodeGenArgs()
1225 if (Args.hasFlag(OPT_flimit_debug_info, OPT_fno_limit_debug_info, true)) in ParseCodeGenArgs()
1231 Opts.DisableLLVMOpts = Args.hasArg(OPT_disable_llvm_optzns); in ParseCodeGenArgs()
1232 Opts.DisableRedZone = Args.hasArg(OPT_disable_red_zone); in ParseCodeGenArgs()
1233 Opts.ForbidGuardVariables = Args.hasArg(OPT_fforbid_guard_variables); in ParseCodeGenArgs()
1234 Opts.UseRegisterSizedBitfieldAccess = Args.hasArg( in ParseCodeGenArgs()
1236 Opts.RelaxedAliasing = Args.hasArg(OPT_relaxed_aliasing); in ParseCodeGenArgs()
1237 Opts.DwarfDebugFlags = Args.getLastArgValue(OPT_dwarf_debug_flags); in ParseCodeGenArgs()
1238 Opts.MergeAllConstants = !Args.hasArg(OPT_fno_merge_all_constants); in ParseCodeGenArgs()
1239 Opts.NoCommon = Args.hasArg(OPT_fno_common); in ParseCodeGenArgs()
1240 Opts.NoImplicitFloat = Args.hasArg(OPT_no_implicit_float); in ParseCodeGenArgs()
1241 Opts.OptimizeSize = getOptimizationLevelSize(Args, IK, Diags); in ParseCodeGenArgs()
1242 Opts.SimplifyLibCalls = !(Args.hasArg(OPT_fno_builtin) || in ParseCodeGenArgs()
1243 Args.hasArg(OPT_ffreestanding)); in ParseCodeGenArgs()
1244 Opts.UnrollLoops = Args.hasArg(OPT_funroll_loops) || in ParseCodeGenArgs()
1247 Opts.AsmVerbose = Args.hasArg(OPT_masm_verbose); in ParseCodeGenArgs()
1248 Opts.ObjCAutoRefCountExceptions = Args.hasArg(OPT_fobjc_arc_exceptions); in ParseCodeGenArgs()
1249 Opts.CUDAIsDevice = Args.hasArg(OPT_fcuda_is_device); in ParseCodeGenArgs()
1250 Opts.CXAAtExit = !Args.hasArg(OPT_fno_use_cxa_atexit); in ParseCodeGenArgs()
1251 Opts.CXXCtorDtorAliases = Args.hasArg(OPT_mconstructor_aliases); in ParseCodeGenArgs()
1252 Opts.CodeModel = Args.getLastArgValue(OPT_mcode_model); in ParseCodeGenArgs()
1253 Opts.DebugPass = Args.getLastArgValue(OPT_mdebug_pass); in ParseCodeGenArgs()
1254 Opts.DisableFPElim = Args.hasArg(OPT_mdisable_fp_elim); in ParseCodeGenArgs()
1255 Opts.DisableTailCalls = Args.hasArg(OPT_mdisable_tail_calls); in ParseCodeGenArgs()
1256 Opts.FloatABI = Args.getLastArgValue(OPT_mfloat_abi); in ParseCodeGenArgs()
1257 Opts.HiddenWeakVTables = Args.hasArg(OPT_fhidden_weak_vtables); in ParseCodeGenArgs()
1258 Opts.LessPreciseFPMAD = Args.hasArg(OPT_cl_mad_enable); in ParseCodeGenArgs()
1259 Opts.LimitFloatPrecision = Args.getLastArgValue(OPT_mlimit_float_precision); in ParseCodeGenArgs()
1260 Opts.NoInfsFPMath = (Args.hasArg(OPT_menable_no_infinities) || in ParseCodeGenArgs()
1261 Args.hasArg(OPT_cl_finite_math_only)|| in ParseCodeGenArgs()
1262 Args.hasArg(OPT_cl_fast_relaxed_math)); in ParseCodeGenArgs()
1263 Opts.NoNaNsFPMath = (Args.hasArg(OPT_menable_no_nans) || in ParseCodeGenArgs()
1264 Args.hasArg(OPT_cl_finite_math_only)|| in ParseCodeGenArgs()
1265 Args.hasArg(OPT_cl_fast_relaxed_math)); in ParseCodeGenArgs()
1266 Opts.NoZeroInitializedInBSS = Args.hasArg(OPT_mno_zero_initialized_in_bss); in ParseCodeGenArgs()
1267 Opts.BackendOptions = Args.getAllArgValues(OPT_backend_option); in ParseCodeGenArgs()
1268 Opts.NumRegisterParameters = Args.getLastArgIntValue(OPT_mregparm, 0, Diags); in ParseCodeGenArgs()
1269 Opts.NoGlobalMerge = Args.hasArg(OPT_mno_global_merge); in ParseCodeGenArgs()
1270 Opts.NoExecStack = Args.hasArg(OPT_mno_exec_stack); in ParseCodeGenArgs()
1271 Opts.RelaxAll = Args.hasArg(OPT_mrelax_all); in ParseCodeGenArgs()
1272 Opts.OmitLeafFramePointer = Args.hasArg(OPT_momit_leaf_frame_pointer); in ParseCodeGenArgs()
1273 Opts.SaveTempLabels = Args.hasArg(OPT_msave_temp_labels); in ParseCodeGenArgs()
1274 Opts.NoDwarf2CFIAsm = Args.hasArg(OPT_fno_dwarf2_cfi_asm); in ParseCodeGenArgs()
1275 Opts.NoDwarfDirectoryAsm = Args.hasArg(OPT_fno_dwarf_directory_asm); in ParseCodeGenArgs()
1276 Opts.SoftFloat = Args.hasArg(OPT_msoft_float); in ParseCodeGenArgs()
1277 Opts.StrictEnums = Args.hasArg(OPT_fstrict_enums); in ParseCodeGenArgs()
1278 Opts.UnsafeFPMath = Args.hasArg(OPT_menable_unsafe_fp_math) || in ParseCodeGenArgs()
1279 Args.hasArg(OPT_cl_unsafe_math_optimizations) || in ParseCodeGenArgs()
1280 Args.hasArg(OPT_cl_fast_relaxed_math); in ParseCodeGenArgs()
1281 Opts.UnwindTables = Args.hasArg(OPT_munwind_tables); in ParseCodeGenArgs()
1282 Opts.RelocationModel = Args.getLastArgValue(OPT_mrelocation_model, "pic"); in ParseCodeGenArgs()
1283 Opts.TrapFuncName = Args.getLastArgValue(OPT_ftrap_function_EQ); in ParseCodeGenArgs()
1284 Opts.BoundsChecking = Args.getLastArgIntValue(OPT_fbounds_checking_EQ, 0, in ParseCodeGenArgs()
1286 Opts.UseInitArray = Args.hasArg(OPT_fuse_init_array); in ParseCodeGenArgs()
1288 Opts.FunctionSections = Args.hasArg(OPT_ffunction_sections); in ParseCodeGenArgs()
1289 Opts.DataSections = Args.hasArg(OPT_fdata_sections); in ParseCodeGenArgs()
1291 Opts.MainFileName = Args.getLastArgValue(OPT_main_file_name); in ParseCodeGenArgs()
1292 Opts.VerifyModule = !Args.hasArg(OPT_disable_llvm_verifier); in ParseCodeGenArgs()
1294 Opts.InstrumentFunctions = Args.hasArg(OPT_finstrument_functions); in ParseCodeGenArgs()
1295 Opts.InstrumentForProfiling = Args.hasArg(OPT_pg); in ParseCodeGenArgs()
1296 Opts.EmitGcovArcs = Args.hasArg(OPT_femit_coverage_data); in ParseCodeGenArgs()
1297 Opts.EmitGcovNotes = Args.hasArg(OPT_femit_coverage_notes); in ParseCodeGenArgs()
1298 Opts.EmitOpenCLArgMetadata = Args.hasArg(OPT_cl_kernel_arg_info); in ParseCodeGenArgs()
1299 Opts.CoverageFile = Args.getLastArgValue(OPT_coverage_file); in ParseCodeGenArgs()
1300 Opts.DebugCompilationDir = Args.getLastArgValue(OPT_fdebug_compilation_dir); in ParseCodeGenArgs()
1301 Opts.LinkBitcodeFile = Args.getLastArgValue(OPT_mlink_bitcode_file); in ParseCodeGenArgs()
1303 Args.getLastArgIntValue(OPT_stack_protector_buffer_size, 8, Diags); in ParseCodeGenArgs()
1304 Opts.StackRealignment = Args.hasArg(OPT_mstackrealign); in ParseCodeGenArgs()
1305 if (Arg *A = Args.getLastArg(OPT_mstack_alignment)) { in ParseCodeGenArgs()
1306 StringRef Val = A->getValue(Args); in ParseCodeGenArgs()
1310 if (Arg *A = Args.getLastArg(OPT_fobjc_dispatch_method_EQ)) { in ParseCodeGenArgs()
1311 StringRef Name = A->getValue(Args); in ParseCodeGenArgs()
1318 Diags.Report(diag::err_drv_invalid_value) << A->getAsString(Args) << Name; in ParseCodeGenArgs()
1325 if (Arg *A = Args.getLastArg(OPT_ftlsmodel_EQ)) { in ParseCodeGenArgs()
1326 StringRef Name = A->getValue(Args); in ParseCodeGenArgs()
1334 Diags.Report(diag::err_drv_invalid_value) << A->getAsString(Args) << Name; in ParseCodeGenArgs()
1345 ArgList &Args) { in ParseDependencyOutputArgs() argument
1347 Opts.OutputFile = Args.getLastArgValue(OPT_dependency_file); in ParseDependencyOutputArgs()
1348 Opts.Targets = Args.getAllArgValues(OPT_MT); in ParseDependencyOutputArgs()
1349 Opts.IncludeSystemHeaders = Args.hasArg(OPT_sys_header_deps); in ParseDependencyOutputArgs()
1350 Opts.UsePhonyTargets = Args.hasArg(OPT_MP); in ParseDependencyOutputArgs()
1351 Opts.ShowHeaderIncludes = Args.hasArg(OPT_H); in ParseDependencyOutputArgs()
1352 Opts.HeaderIncludeOutputFile = Args.getLastArgValue(OPT_header_include_file); in ParseDependencyOutputArgs()
1353 Opts.AddMissingHeaderDeps = Args.hasArg(OPT_MG); in ParseDependencyOutputArgs()
1354 Opts.DOTOutputFile = Args.getLastArgValue(OPT_dependency_dot); in ParseDependencyOutputArgs()
1357 bool clang::ParseDiagnosticArgs(DiagnosticOptions &Opts, ArgList &Args, in ParseDiagnosticArgs() argument
1362 Opts.DiagnosticLogFile = Args.getLastArgValue(OPT_diagnostic_log_file); in ParseDiagnosticArgs()
1364 Args.getLastArgValue(OPT_diagnostic_serialized_file); in ParseDiagnosticArgs()
1365 Opts.IgnoreWarnings = Args.hasArg(OPT_w); in ParseDiagnosticArgs()
1366 Opts.NoRewriteMacros = Args.hasArg(OPT_Wno_rewrite_macros); in ParseDiagnosticArgs()
1367 Opts.Pedantic = Args.hasArg(OPT_pedantic); in ParseDiagnosticArgs()
1368 Opts.PedanticErrors = Args.hasArg(OPT_pedantic_errors); in ParseDiagnosticArgs()
1369 Opts.ShowCarets = !Args.hasArg(OPT_fno_caret_diagnostics); in ParseDiagnosticArgs()
1370 Opts.ShowColors = Args.hasArg(OPT_fcolor_diagnostics); in ParseDiagnosticArgs()
1371 Opts.ShowColumn = Args.hasFlag(OPT_fshow_column, in ParseDiagnosticArgs()
1374 Opts.ShowFixits = !Args.hasArg(OPT_fno_diagnostics_fixit_info); in ParseDiagnosticArgs()
1375 Opts.ShowLocation = !Args.hasArg(OPT_fno_show_source_location); in ParseDiagnosticArgs()
1376 Opts.ShowOptionNames = Args.hasArg(OPT_fdiagnostics_show_option); in ParseDiagnosticArgs()
1380 if (Arg *A = Args.getLastArg(OPT_fdiagnostics_show_note_include_stack, in ParseDiagnosticArgs()
1386 Args.getLastArgValue(OPT_fshow_overloads_EQ, "all"); in ParseDiagnosticArgs()
1395 << Args.getLastArg(OPT_fshow_overloads_EQ)->getAsString(Args) in ParseDiagnosticArgs()
1400 Args.getLastArgValue(OPT_fdiagnostics_show_category, "none"); in ParseDiagnosticArgs()
1411 << Args.getLastArg(OPT_fdiagnostics_show_category)->getAsString(Args) in ParseDiagnosticArgs()
1416 Args.getLastArgValue(OPT_fdiagnostics_format, "clang"); in ParseDiagnosticArgs()
1427 << Args.getLastArg(OPT_fdiagnostics_format)->getAsString(Args) in ParseDiagnosticArgs()
1431 Opts.ShowSourceRanges = Args.hasArg(OPT_fdiagnostics_print_source_range_info); in ParseDiagnosticArgs()
1432 Opts.ShowParseableFixits = Args.hasArg(OPT_fdiagnostics_parseable_fixits); in ParseDiagnosticArgs()
1433 Opts.VerifyDiagnostics = Args.hasArg(OPT_verify); in ParseDiagnosticArgs()
1434 Opts.ElideType = !Args.hasArg(OPT_fno_elide_type); in ParseDiagnosticArgs()
1435 Opts.ShowTemplateTree = Args.hasArg(OPT_fdiagnostics_show_template_tree); in ParseDiagnosticArgs()
1436 Opts.ErrorLimit = Args.getLastArgIntValue(OPT_ferror_limit, 0, Diags); in ParseDiagnosticArgs()
1438 = Args.getLastArgIntValue(OPT_fmacro_backtrace_limit, in ParseDiagnosticArgs()
1441 = Args.getLastArgIntValue(OPT_ftemplate_backtrace_limit, in ParseDiagnosticArgs()
1445 = Args.getLastArgIntValue(OPT_fconstexpr_backtrace_limit, in ParseDiagnosticArgs()
1448 Opts.TabStop = Args.getLastArgIntValue(OPT_ftabstop, in ParseDiagnosticArgs()
1456 Opts.MessageLength = Args.getLastArgIntValue(OPT_fmessage_length, 0, Diags); in ParseDiagnosticArgs()
1457 Opts.DumpBuildInformation = Args.getLastArgValue(OPT_dump_build_information); in ParseDiagnosticArgs()
1458 addWarningArgs(Args, Opts.Warnings); in ParseDiagnosticArgs()
1463 static void ParseFileSystemArgs(FileSystemOptions &Opts, ArgList &Args) { in ParseFileSystemArgs() argument
1464 Opts.WorkingDir = Args.getLastArgValue(OPT_working_directory); in ParseFileSystemArgs()
1467 static InputKind ParseFrontendArgs(FrontendOptions &Opts, ArgList &Args, in ParseFrontendArgs() argument
1471 if (const Arg *A = Args.getLastArg(OPT_Action_Group)) { in ParseFrontendArgs()
1504 Opts.FixItSuffix = A->getValue(Args); in ParseFrontendArgs()
1539 if (const Arg* A = Args.getLastArg(OPT_plugin)) { in ParseFrontendArgs()
1540 Opts.Plugins.push_back(A->getValue(Args,0)); in ParseFrontendArgs()
1542 Opts.ActionName = A->getValue(Args); in ParseFrontendArgs()
1544 for (arg_iterator it = Args.filtered_begin(OPT_plugin_arg), in ParseFrontendArgs()
1545 end = Args.filtered_end(); it != end; ++it) { in ParseFrontendArgs()
1546 if ((*it)->getValue(Args, 0) == Opts.ActionName) in ParseFrontendArgs()
1547 Opts.PluginArgs.push_back((*it)->getValue(Args, 1)); in ParseFrontendArgs()
1551 Opts.AddPluginActions = Args.getAllArgValues(OPT_add_plugin); in ParseFrontendArgs()
1554 for (arg_iterator it = Args.filtered_begin(OPT_plugin_arg), in ParseFrontendArgs()
1555 end = Args.filtered_end(); it != end; ++it) { in ParseFrontendArgs()
1556 if ((*it)->getValue(Args, 0) == Opts.AddPluginActions[i]) in ParseFrontendArgs()
1557 Opts.AddPluginArgs[i].push_back((*it)->getValue(Args, 1)); in ParseFrontendArgs()
1561 if (const Arg *A = Args.getLastArg(OPT_code_completion_at)) { in ParseFrontendArgs()
1563 ParsedSourceLocation::FromString(A->getValue(Args)); in ParseFrontendArgs()
1566 << A->getAsString(Args) << A->getValue(Args); in ParseFrontendArgs()
1568 Opts.DisableFree = Args.hasArg(OPT_disable_free); in ParseFrontendArgs()
1570 Opts.OutputFile = Args.getLastArgValue(OPT_o); in ParseFrontendArgs()
1571 Opts.Plugins = Args.getAllArgValues(OPT_load); in ParseFrontendArgs()
1572 Opts.RelocatablePCH = Args.hasArg(OPT_relocatable_pch); in ParseFrontendArgs()
1573 Opts.ShowHelp = Args.hasArg(OPT_help); in ParseFrontendArgs()
1574 Opts.ShowStats = Args.hasArg(OPT_print_stats); in ParseFrontendArgs()
1575 Opts.ShowTimers = Args.hasArg(OPT_ftime_report); in ParseFrontendArgs()
1576 Opts.ShowVersion = Args.hasArg(OPT_version); in ParseFrontendArgs()
1577 Opts.ASTMergeFiles = Args.getAllArgValues(OPT_ast_merge); in ParseFrontendArgs()
1578 Opts.LLVMArgs = Args.getAllArgValues(OPT_mllvm); in ParseFrontendArgs()
1579 Opts.FixWhatYouCan = Args.hasArg(OPT_fix_what_you_can); in ParseFrontendArgs()
1580 Opts.FixOnlyWarnings = Args.hasArg(OPT_fix_only_warnings); in ParseFrontendArgs()
1581 Opts.FixAndRecompile = Args.hasArg(OPT_fixit_recompile); in ParseFrontendArgs()
1582 Opts.FixToTemporaries = Args.hasArg(OPT_fixit_to_temp); in ParseFrontendArgs()
1583 Opts.ASTDumpFilter = Args.getLastArgValue(OPT_ast_dump_filter); in ParseFrontendArgs()
1586 = Args.hasArg(OPT_code_completion_macros); in ParseFrontendArgs()
1588 = Args.hasArg(OPT_code_completion_patterns); in ParseFrontendArgs()
1590 = !Args.hasArg(OPT_no_code_completion_globals); in ParseFrontendArgs()
1592 = Args.hasArg(OPT_code_completion_brief_comments); in ParseFrontendArgs()
1595 = Args.getLastArgValue(OPT_foverride_record_layout_EQ); in ParseFrontendArgs()
1596 if (const Arg *A = Args.getLastArg(OPT_arcmt_check, in ParseFrontendArgs()
1613 Opts.MTMigrateDir = Args.getLastArgValue(OPT_mt_migrate_directory); in ParseFrontendArgs()
1615 = Args.getLastArgValue(OPT_arcmt_migrate_report_output); in ParseFrontendArgs()
1617 = Args.hasArg(OPT_arcmt_migrate_emit_arc_errors); in ParseFrontendArgs()
1619 if (Args.hasArg(OPT_objcmt_migrate_literals)) in ParseFrontendArgs()
1621 if (Args.hasArg(OPT_objcmt_migrate_subscripting)) in ParseFrontendArgs()
1631 if (const Arg *A = Args.getLastArg(OPT_x)) { in ParseFrontendArgs()
1632 DashX = llvm::StringSwitch<InputKind>(A->getValue(Args)) in ParseFrontendArgs()
1656 << A->getAsString(Args) << A->getValue(Args); in ParseFrontendArgs()
1660 std::vector<std::string> Inputs = Args.getAllArgValues(OPT_INPUT); in ParseFrontendArgs()
1696 static void ParseHeaderSearchArgs(HeaderSearchOptions &Opts, ArgList &Args) { in ParseHeaderSearchArgs() argument
1698 Opts.Sysroot = Args.getLastArgValue(OPT_isysroot, "/"); in ParseHeaderSearchArgs()
1699 Opts.Verbose = Args.hasArg(OPT_v); in ParseHeaderSearchArgs()
1700 Opts.UseBuiltinIncludes = !Args.hasArg(OPT_nobuiltininc); in ParseHeaderSearchArgs()
1701 Opts.UseStandardSystemIncludes = !Args.hasArg(OPT_nostdsysteminc); in ParseHeaderSearchArgs()
1702 Opts.UseStandardCXXIncludes = !Args.hasArg(OPT_nostdincxx); in ParseHeaderSearchArgs()
1703 if (const Arg *A = Args.getLastArg(OPT_stdlib_EQ)) in ParseHeaderSearchArgs()
1704 Opts.UseLibcxx = (strcmp(A->getValue(Args), "libc++") == 0); in ParseHeaderSearchArgs()
1705 Opts.ResourceDir = Args.getLastArgValue(OPT_resource_dir); in ParseHeaderSearchArgs()
1706 Opts.ModuleCachePath = Args.getLastArgValue(OPT_fmodule_cache_path); in ParseHeaderSearchArgs()
1707 Opts.DisableModuleHash = Args.hasArg(OPT_fdisable_module_hash); in ParseHeaderSearchArgs()
1711 for (arg_iterator it = Args.filtered_begin(OPT_I, OPT_F, in ParseHeaderSearchArgs()
1713 ie = Args.filtered_end(); it != ie; ++it) { in ParseHeaderSearchArgs()
1723 Opts.AddPath((*it)->getValue(Args), Group, true, in ParseHeaderSearchArgs()
1730 for (arg_iterator it = Args.filtered_begin(OPT_iprefix, OPT_iwithprefix, in ParseHeaderSearchArgs()
1732 ie = Args.filtered_end(); it != ie; ++it) { in ParseHeaderSearchArgs()
1735 Prefix = A->getValue(Args); in ParseHeaderSearchArgs()
1737 Opts.AddPath(Prefix.str() + A->getValue(Args), in ParseHeaderSearchArgs()
1740 Opts.AddPath(Prefix.str() + A->getValue(Args), in ParseHeaderSearchArgs()
1744 for (arg_iterator it = Args.filtered_begin(OPT_idirafter), in ParseHeaderSearchArgs()
1745 ie = Args.filtered_end(); it != ie; ++it) in ParseHeaderSearchArgs()
1746 Opts.AddPath((*it)->getValue(Args), frontend::After, true, false, false); in ParseHeaderSearchArgs()
1747 for (arg_iterator it = Args.filtered_begin(OPT_iquote), in ParseHeaderSearchArgs()
1748 ie = Args.filtered_end(); it != ie; ++it) in ParseHeaderSearchArgs()
1749 Opts.AddPath((*it)->getValue(Args), frontend::Quoted, true, false, false); in ParseHeaderSearchArgs()
1750 for (arg_iterator it = Args.filtered_begin(OPT_isystem, in ParseHeaderSearchArgs()
1751 OPT_iwithsysroot), ie = Args.filtered_end(); it != ie; ++it) in ParseHeaderSearchArgs()
1752 Opts.AddPath((*it)->getValue(Args), frontend::System, true, false, in ParseHeaderSearchArgs()
1754 for (arg_iterator it = Args.filtered_begin(OPT_iframework), in ParseHeaderSearchArgs()
1755 ie = Args.filtered_end(); it != ie; ++it) in ParseHeaderSearchArgs()
1756 Opts.AddPath((*it)->getValue(Args), frontend::System, true, true, in ParseHeaderSearchArgs()
1760 for (arg_iterator it = Args.filtered_begin(OPT_c_isystem), in ParseHeaderSearchArgs()
1761 ie = Args.filtered_end(); it != ie; ++it) in ParseHeaderSearchArgs()
1762 Opts.AddPath((*it)->getValue(Args), frontend::CSystem, true, false, true); in ParseHeaderSearchArgs()
1763 for (arg_iterator it = Args.filtered_begin(OPT_cxx_isystem), in ParseHeaderSearchArgs()
1764 ie = Args.filtered_end(); it != ie; ++it) in ParseHeaderSearchArgs()
1765 Opts.AddPath((*it)->getValue(Args), frontend::CXXSystem, true, false, true); in ParseHeaderSearchArgs()
1766 for (arg_iterator it = Args.filtered_begin(OPT_objc_isystem), in ParseHeaderSearchArgs()
1767 ie = Args.filtered_end(); it != ie; ++it) in ParseHeaderSearchArgs()
1768 Opts.AddPath((*it)->getValue(Args), frontend::ObjCSystem, true, false,true); in ParseHeaderSearchArgs()
1769 for (arg_iterator it = Args.filtered_begin(OPT_objcxx_isystem), in ParseHeaderSearchArgs()
1770 ie = Args.filtered_end(); it != ie; ++it) in ParseHeaderSearchArgs()
1771 Opts.AddPath((*it)->getValue(Args), frontend::ObjCXXSystem, true, false, in ParseHeaderSearchArgs()
1775 for (arg_iterator I = Args.filtered_begin(OPT_internal_isystem, in ParseHeaderSearchArgs()
1777 E = Args.filtered_end(); in ParseHeaderSearchArgs()
1779 Opts.AddPath((*I)->getValue(Args), frontend::System, in ParseHeaderSearchArgs()
1784 for (arg_iterator I = Args.filtered_begin(OPT_isystem_prefix, in ParseHeaderSearchArgs()
1786 E = Args.filtered_end(); in ParseHeaderSearchArgs()
1788 Opts.AddSystemHeaderPrefix((*I)->getValue(Args), in ParseHeaderSearchArgs()
1888 static void ParseLangArgs(LangOptions &Opts, ArgList &Args, InputKind IK, in ParseLangArgs() argument
1892 if (const Arg *A = Args.getLastArg(OPT_std_EQ)) { in ParseLangArgs()
1893 LangStd = llvm::StringSwitch<LangStandard::Kind>(A->getValue(Args)) in ParseLangArgs()
1900 << A->getAsString(Args) << A->getValue(Args); in ParseLangArgs()
1911 << A->getAsString(Args) << "C/ObjC"; in ParseLangArgs()
1919 << A->getAsString(Args) << "C++/ObjC++"; in ParseLangArgs()
1924 << A->getAsString(Args) << "OpenCL"; in ParseLangArgs()
1929 << A->getAsString(Args) << "CUDA"; in ParseLangArgs()
1939 if (const Arg *A = Args.getLastArg(OPT_cl_std_EQ)) { in ParseLangArgs()
1941 = llvm::StringSwitch<LangStandard::Kind>(A->getValue(Args)) in ParseLangArgs()
1949 << A->getAsString(Args) << A->getValue(Args); in ParseLangArgs()
1962 Opts.GNUKeywords = Args.hasFlag(OPT_fgnu_keywords, OPT_fno_gnu_keywords, in ParseLangArgs()
1965 if (Args.hasArg(OPT_fno_operator_names)) in ParseLangArgs()
1969 if (Arg *arg = Args.getLastArg(OPT_fobjc_runtime_EQ)) { in ParseLangArgs()
1970 StringRef value = arg->getValue(Args); in ParseLangArgs()
1975 if (Args.hasArg(OPT_fobjc_gc_only)) in ParseLangArgs()
1977 else if (Args.hasArg(OPT_fobjc_gc)) in ParseLangArgs()
1979 else if (Args.hasArg(OPT_fobjc_arc)) { in ParseLangArgs()
1985 if (Args.hasArg(OPT_fobjc_runtime_has_weak)) in ParseLangArgs()
1991 if (Args.hasArg(OPT_fno_objc_infer_related_result_type)) in ParseLangArgs()
1995 if (Args.hasArg(OPT_fgnu89_inline)) in ParseLangArgs()
1998 if (Args.hasArg(OPT_fapple_kext)) { in ParseLangArgs()
2005 if (Args.hasArg(OPT_print_ivar_layout)) in ParseLangArgs()
2007 if (Args.hasArg(OPT_fno_constant_cfstrings)) in ParseLangArgs()
2010 if (Args.hasArg(OPT_faltivec)) in ParseLangArgs()
2013 if (Args.hasArg(OPT_pthread)) in ParseLangArgs()
2016 if (Args.hasArg(OPT_fdelayed_template_parsing)) in ParseLangArgs()
2019 StringRef Vis = Args.getLastArgValue(OPT_fvisibility, "default"); in ParseLangArgs()
2029 << Args.getLastArg(OPT_fvisibility)->getAsString(Args) << Vis; in ParseLangArgs()
2031 if (Arg *A = Args.getLastArg(OPT_ffp_contract)) { in ParseLangArgs()
2032 StringRef Val = A->getValue(Args); in ParseLangArgs()
2040 Diags.Report(diag::err_drv_invalid_value) << A->getAsString(Args) << Val; in ParseLangArgs()
2043 if (Args.hasArg(OPT_fvisibility_inlines_hidden)) in ParseLangArgs()
2046 if (Args.hasArg(OPT_ftrapv)) { in ParseLangArgs()
2050 Args.getLastArgValue(OPT_ftrapv_handler); in ParseLangArgs()
2052 else if (Args.hasArg(OPT_fwrapv)) in ParseLangArgs()
2055 if (Args.hasArg(OPT_trigraphs)) in ParseLangArgs()
2058 Opts.DollarIdents = Args.hasFlag(OPT_fdollars_in_identifiers, in ParseLangArgs()
2061 Opts.PascalStrings = Args.hasArg(OPT_fpascal_strings); in ParseLangArgs()
2063 = Args.hasArg(OPT_fms_extensions) || Args.hasArg(OPT_fms_compatibility); in ParseLangArgs()
2064 Opts.MicrosoftMode = Args.hasArg(OPT_fms_compatibility); in ParseLangArgs()
2065 Opts.MSCVersion = Args.getLastArgIntValue(OPT_fmsc_version, 0, Diags); in ParseLangArgs()
2066 Opts.Borland = Args.hasArg(OPT_fborland_extensions); in ParseLangArgs()
2067 Opts.WritableStrings = Args.hasArg(OPT_fwritable_strings); in ParseLangArgs()
2068 Opts.ConstStrings = Args.hasFlag(OPT_fconst_strings, OPT_fno_const_strings, in ParseLangArgs()
2070 if (Args.hasArg(OPT_fno_lax_vector_conversions)) in ParseLangArgs()
2072 if (Args.hasArg(OPT_fno_threadsafe_statics)) in ParseLangArgs()
2074 Opts.Exceptions = Args.hasArg(OPT_fexceptions); in ParseLangArgs()
2075 Opts.ObjCExceptions = Args.hasArg(OPT_fobjc_exceptions); in ParseLangArgs()
2076 Opts.CXXExceptions = Args.hasArg(OPT_fcxx_exceptions); in ParseLangArgs()
2077 Opts.SjLjExceptions = Args.hasArg(OPT_fsjlj_exceptions); in ParseLangArgs()
2078 Opts.TraditionalCPP = Args.hasArg(OPT_traditional_cpp); in ParseLangArgs()
2080 Opts.RTTI = !Args.hasArg(OPT_fno_rtti); in ParseLangArgs()
2081 Opts.Blocks = Args.hasArg(OPT_fblocks); in ParseLangArgs()
2082 Opts.BlocksRuntimeOptional = Args.hasArg(OPT_fblocks_runtime_optional); in ParseLangArgs()
2083 Opts.Modules = Args.hasArg(OPT_fmodules); in ParseLangArgs()
2084 Opts.CharIsSigned = !Args.hasArg(OPT_fno_signed_char); in ParseLangArgs()
2085 Opts.WChar = Opts.CPlusPlus && !Args.hasArg(OPT_fno_wchar); in ParseLangArgs()
2086 Opts.ShortWChar = Args.hasArg(OPT_fshort_wchar); in ParseLangArgs()
2087 Opts.ShortEnums = Args.hasArg(OPT_fshort_enums); in ParseLangArgs()
2088 Opts.Freestanding = Args.hasArg(OPT_ffreestanding); in ParseLangArgs()
2089 Opts.NoBuiltin = Args.hasArg(OPT_fno_builtin) || Opts.Freestanding; in ParseLangArgs()
2090 Opts.AssumeSaneOperatorNew = !Args.hasArg(OPT_fno_assume_sane_operator_new); in ParseLangArgs()
2091 Opts.HeinousExtensions = Args.hasArg(OPT_fheinous_gnu_extensions); in ParseLangArgs()
2092 Opts.AccessControl = !Args.hasArg(OPT_fno_access_control); in ParseLangArgs()
2093 Opts.ElideConstructors = !Args.hasArg(OPT_fno_elide_constructors); in ParseLangArgs()
2094 Opts.MathErrno = Args.hasArg(OPT_fmath_errno); in ParseLangArgs()
2095 Opts.InstantiationDepth = Args.getLastArgIntValue(OPT_ftemplate_depth, 512, in ParseLangArgs()
2097 Opts.ConstexprCallDepth = Args.getLastArgIntValue(OPT_fconstexpr_depth, 512, in ParseLangArgs()
2099 Opts.DelayedTemplateParsing = Args.hasArg(OPT_fdelayed_template_parsing); in ParseLangArgs()
2100 Opts.NumLargeByValueCopy = Args.getLastArgIntValue(OPT_Wlarge_by_value_copy_EQ, in ParseLangArgs()
2102 Opts.MSBitfields = Args.hasArg(OPT_mms_bitfields); in ParseLangArgs()
2104 Args.getLastArgValue(OPT_fconstant_string_class); in ParseLangArgs()
2106 Args.hasArg(OPT_fobjc_default_synthesize_properties); in ParseLangArgs()
2107 Opts.CatchUndefined = Args.hasArg(OPT_fcatch_undefined_behavior); in ParseLangArgs()
2108 Opts.EmitAllDecls = Args.hasArg(OPT_femit_all_decls); in ParseLangArgs()
2109 Opts.PackStruct = Args.getLastArgIntValue(OPT_fpack_struct_EQ, 0, Diags); in ParseLangArgs()
2110 Opts.PICLevel = Args.getLastArgIntValue(OPT_pic_level, 0, Diags); in ParseLangArgs()
2111 Opts.PIELevel = Args.getLastArgIntValue(OPT_pie_level, 0, Diags); in ParseLangArgs()
2112 Opts.Static = Args.hasArg(OPT_static_define); in ParseLangArgs()
2113 Opts.DumpRecordLayoutsSimple = Args.hasArg(OPT_fdump_record_layouts_simple); in ParseLangArgs()
2115 || Args.hasArg(OPT_fdump_record_layouts); in ParseLangArgs()
2116 Opts.DumpVTableLayouts = Args.hasArg(OPT_fdump_vtable_layouts); in ParseLangArgs()
2117 Opts.SpellChecking = !Args.hasArg(OPT_fno_spell_checking); in ParseLangArgs()
2118 Opts.NoBitFieldTypeAlign = Args.hasArg(OPT_fno_bitfield_type_align); in ParseLangArgs()
2119 Opts.SinglePrecisionConstants = Args.hasArg(OPT_cl_single_precision_constant); in ParseLangArgs()
2120 Opts.FastRelaxedMath = Args.hasArg(OPT_cl_fast_relaxed_math); in ParseLangArgs()
2121 Opts.MRTD = Args.hasArg(OPT_mrtd); in ParseLangArgs()
2122 Opts.HexagonQdsp6Compat = Args.hasArg(OPT_mqdsp6_compat); in ParseLangArgs()
2123 Opts.FakeAddressSpaceMap = Args.hasArg(OPT_ffake_address_space_map); in ParseLangArgs()
2124 Opts.ParseUnknownAnytype = Args.hasArg(OPT_funknown_anytype); in ParseLangArgs()
2125 Opts.DebuggerSupport = Args.hasArg(OPT_fdebugger_support); in ParseLangArgs()
2126 Opts.DebuggerCastResultToId = Args.hasArg(OPT_fdebugger_cast_result_to_id); in ParseLangArgs()
2127 Opts.DebuggerObjCLiteral = Args.hasArg(OPT_fdebugger_objc_literal); in ParseLangArgs()
2128 Opts.AddressSanitizer = Args.hasArg(OPT_faddress_sanitizer); in ParseLangArgs()
2129 Opts.ThreadSanitizer = Args.hasArg(OPT_fthread_sanitizer); in ParseLangArgs()
2130 Opts.ApplePragmaPack = Args.hasArg(OPT_fapple_pragma_pack); in ParseLangArgs()
2131 Opts.CurrentModule = Args.getLastArgValue(OPT_fmodule_name); in ParseLangArgs()
2134 Opts.Deprecated = Args.hasFlag(OPT_fdeprecated_macro, in ParseLangArgs()
2139 unsigned Opt = getOptimizationLevel(Args, IK, Diags), in ParseLangArgs()
2140 OptSize = getOptimizationLevelSize(Args, IK, Diags); in ParseLangArgs()
2147 Opts.NoInlineDefine = !Opt || Args.hasArg(OPT_fno_inline); in ParseLangArgs()
2149 Opts.FastMath = Args.hasArg(OPT_ffast_math); in ParseLangArgs()
2150 Opts.FiniteMathOnly = Args.hasArg(OPT_ffinite_math_only); in ParseLangArgs()
2152 Opts.EmitMicrosoftInlineAsm = Args.hasArg(OPT_fenable_experimental_ms_inline_asm); in ParseLangArgs()
2154 unsigned SSP = Args.getLastArgIntValue(OPT_stack_protector, 0, Diags); in ParseLangArgs()
2158 << Args.getLastArg(OPT_stack_protector)->getAsString(Args) << SSP; in ParseLangArgs()
2166 static void ParsePreprocessorArgs(PreprocessorOptions &Opts, ArgList &Args, in ParsePreprocessorArgs() argument
2170 Opts.ImplicitPCHInclude = Args.getLastArgValue(OPT_include_pch); in ParsePreprocessorArgs()
2171 Opts.ImplicitPTHInclude = Args.getLastArgValue(OPT_include_pth); in ParsePreprocessorArgs()
2172 if (const Arg *A = Args.getLastArg(OPT_token_cache)) in ParsePreprocessorArgs()
2173 Opts.TokenCache = A->getValue(Args); in ParsePreprocessorArgs()
2176 Opts.UsePredefines = !Args.hasArg(OPT_undef); in ParsePreprocessorArgs()
2177 Opts.DetailedRecord = Args.hasArg(OPT_detailed_preprocessing_record); in ParsePreprocessorArgs()
2178 Opts.DisablePCHValidation = Args.hasArg(OPT_fno_validate_pch); in ParsePreprocessorArgs()
2180 Opts.DumpDeserializedPCHDecls = Args.hasArg(OPT_dump_deserialized_pch_decls); in ParsePreprocessorArgs()
2181 for (arg_iterator it = Args.filtered_begin(OPT_error_on_deserialized_pch_decl), in ParsePreprocessorArgs()
2182 ie = Args.filtered_end(); it != ie; ++it) { in ParsePreprocessorArgs()
2184 Opts.DeserializedPCHDeclsToErrorOn.insert(A->getValue(Args)); in ParsePreprocessorArgs()
2187 if (const Arg *A = Args.getLastArg(OPT_preamble_bytes_EQ)) { in ParsePreprocessorArgs()
2188 StringRef Value(A->getValue(Args)); in ParsePreprocessorArgs()
2204 for (arg_iterator it = Args.filtered_begin(OPT_D, OPT_U), in ParsePreprocessorArgs()
2205 ie = Args.filtered_end(); it != ie; ++it) { in ParsePreprocessorArgs()
2207 Opts.addMacroDef((*it)->getValue(Args)); in ParsePreprocessorArgs()
2209 Opts.addMacroUndef((*it)->getValue(Args)); in ParsePreprocessorArgs()
2212 Opts.MacroIncludes = Args.getAllArgValues(OPT_imacros); in ParsePreprocessorArgs()
2215 for (arg_iterator it = Args.filtered_begin(OPT_include, OPT_include_pch, in ParsePreprocessorArgs()
2217 ie = Args.filtered_end(); it != ie; ++it) { in ParsePreprocessorArgs()
2222 ASTReader::getOriginalSourceFile(A->getValue(Args), FileMgr, Diags); in ParsePreprocessorArgs()
2228 Opts.Includes.push_back(A->getValue(Args)); in ParsePreprocessorArgs()
2231 for (arg_iterator it = Args.filtered_begin(OPT_chain_include), in ParsePreprocessorArgs()
2232 ie = Args.filtered_end(); it != ie; ++it) { in ParsePreprocessorArgs()
2234 Opts.ChainedIncludes.push_back(A->getValue(Args)); in ParsePreprocessorArgs()
2238 if (Args.hasArg(OPT_faltivec)) in ParsePreprocessorArgs()
2241 for (arg_iterator it = Args.filtered_begin(OPT_remap_file), in ParsePreprocessorArgs()
2242 ie = Args.filtered_end(); it != ie; ++it) { in ParsePreprocessorArgs()
2245 StringRef(A->getValue(Args)).split(';'); in ParsePreprocessorArgs()
2248 Diags.Report(diag::err_drv_invalid_remap_file) << A->getAsString(Args); in ParsePreprocessorArgs()
2255 if (Arg *A = Args.getLastArg(OPT_fobjc_arc_cxxlib_EQ)) { in ParsePreprocessorArgs()
2256 StringRef Name = A->getValue(Args); in ParsePreprocessorArgs()
2263 Diags.Report(diag::err_drv_invalid_value) << A->getAsString(Args) << Name; in ParsePreprocessorArgs()
2270 ArgList &Args) { in ParsePreprocessorOutputArgs() argument
2272 Opts.ShowCPP = !Args.hasArg(OPT_dM); in ParsePreprocessorOutputArgs()
2273 Opts.ShowComments = Args.hasArg(OPT_C); in ParsePreprocessorOutputArgs()
2274 Opts.ShowLineMarkers = !Args.hasArg(OPT_P); in ParsePreprocessorOutputArgs()
2275 Opts.ShowMacroComments = Args.hasArg(OPT_CC); in ParsePreprocessorOutputArgs()
2276 Opts.ShowMacros = Args.hasArg(OPT_dM) || Args.hasArg(OPT_dD); in ParsePreprocessorOutputArgs()
2277 Opts.RewriteIncludes = Args.hasArg(OPT_frewrite_includes); in ParsePreprocessorOutputArgs()
2280 static void ParseTargetArgs(TargetOptions &Opts, ArgList &Args) { in ParseTargetArgs() argument
2282 Opts.ABI = Args.getLastArgValue(OPT_target_abi); in ParseTargetArgs()
2283 Opts.CXXABI = Args.getLastArgValue(OPT_cxx_abi); in ParseTargetArgs()
2284 Opts.CPU = Args.getLastArgValue(OPT_target_cpu); in ParseTargetArgs()
2285 Opts.Features = Args.getAllArgValues(OPT_target_feature); in ParseTargetArgs()
2286 Opts.LinkerVersion = Args.getLastArgValue(OPT_target_linker_version); in ParseTargetArgs()
2287 Opts.Triple = llvm::Triple::normalize(Args.getLastArgValue(OPT_triple)); in ParseTargetArgs()
2305 OwningPtr<InputArgList> Args( in CreateFromArgs() local
2311 << Args->getArgString(MissingArgIndex) << MissingArgCount; in CreateFromArgs()
2316 for (arg_iterator it = Args->filtered_begin(OPT_UNKNOWN), in CreateFromArgs()
2317 ie = Args->filtered_end(); it != ie; ++it) { in CreateFromArgs()
2318 Diags.Report(diag::err_drv_unknown_argument) << (*it)->getAsString(*Args); in CreateFromArgs()
2323 for (ArgList::iterator I = Args->begin(), E = Args->end(); in CreateFromArgs()
2326 Diags.Report(diag::err_drv_unknown_argument) << (*I)->getAsString(*Args); in CreateFromArgs()
2331 Success = ParseAnalyzerArgs(*Res.getAnalyzerOpts(), *Args, Diags) && Success; in CreateFromArgs()
2332 Success = ParseMigratorArgs(Res.getMigratorOpts(), *Args) && Success; in CreateFromArgs()
2333 ParseDependencyOutputArgs(Res.getDependencyOutputOpts(), *Args); in CreateFromArgs()
2334 Success = ParseDiagnosticArgs(Res.getDiagnosticOpts(), *Args, &Diags) in CreateFromArgs()
2336 ParseFileSystemArgs(Res.getFileSystemOpts(), *Args); in CreateFromArgs()
2338 InputKind DashX = ParseFrontendArgs(Res.getFrontendOpts(), *Args, Diags); in CreateFromArgs()
2339 Success = ParseCodeGenArgs(Res.getCodeGenOpts(), *Args, DashX, Diags) in CreateFromArgs()
2341 ParseHeaderSearchArgs(Res.getHeaderSearchOpts(), *Args); in CreateFromArgs()
2343 ParseLangArgs(*Res.getLangOpts(), *Args, DashX, Diags); in CreateFromArgs()
2352 ParsePreprocessorArgs(Res.getPreprocessorOpts(), *Args, FileMgr, Diags); in CreateFromArgs()
2353 ParsePreprocessorOutputArgs(Res.getPreprocessorOutputOpts(), *Args); in CreateFromArgs()
2354 ParseTargetArgs(Res.getTargetOpts(), *Args); in CreateFromArgs()