reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
2422 if (const Arg *A = Args.getLastArg(OPT_std_EQ)) { 2426 << A->getAsString(Args) << A->getValue(); 2456 << A->getAsString(Args) << GetInputKindName(IK); 2461 if (Args.hasArg(OPT_fno_dllexport_inlines)) 2464 if (const Arg *A = Args.getLastArg(OPT_fcf_protection_EQ)) { 2472 if (const Arg *A = Args.getLastArg(OPT_cl_std_EQ)) { 2484 << A->getAsString(Args) << A->getValue(); 2490 Opts.IncludeDefaultHeader = Args.hasArg(OPT_finclude_default_header); 2491 Opts.DeclareOpenCLBuiltins = Args.hasArg(OPT_fdeclare_opencl_builtins); 2499 if (Args.getLastArg(OPT_cl_strict_aliasing) 2503 << Args.getLastArg(OPT_cl_strict_aliasing)->getAsString(Args); 2503 << Args.getLastArg(OPT_cl_strict_aliasing)->getAsString(Args); 2511 Opts.GNUKeywords = Args.hasFlag(OPT_fgnu_keywords, OPT_fno_gnu_keywords, 2514 Opts.Digraphs = Args.hasFlag(OPT_fdigraphs, OPT_fno_digraphs, Opts.Digraphs); 2516 if (Args.hasArg(OPT_fno_operator_names)) 2519 if (Args.hasArg(OPT_fcuda_is_device)) 2522 if (Args.hasArg(OPT_fcuda_allow_variadic_functions)) 2525 if (Args.hasArg(OPT_fno_cuda_host_device_constexpr)) 2528 if (Opts.CUDAIsDevice && Args.hasArg(OPT_fcuda_approx_transcendentals)) 2531 Opts.GPURelocatableDeviceCode = Args.hasArg(OPT_fgpu_rdc); 2532 if (Args.hasArg(OPT_fgpu_allow_device_init)) { 2537 << Args.getLastArg(OPT_fgpu_allow_device_init)->getAsString(Args); 2537 << Args.getLastArg(OPT_fgpu_allow_device_init)->getAsString(Args); 2539 Opts.HIPUseNewLaunchAPI = Args.hasArg(OPT_fhip_new_launch_api); 2542 if (Arg *arg = Args.getLastArg(OPT_fobjc_runtime_EQ)) { 2548 if (Args.hasArg(OPT_fobjc_gc_only)) 2550 else if (Args.hasArg(OPT_fobjc_gc)) 2552 else if (Args.hasArg(OPT_fobjc_arc)) { 2562 if (Args.hasArg(OPT_fobjc_runtime_has_weak)) 2569 if (auto weakArg = Args.getLastArg(OPT_fobjc_weak, OPT_fno_objc_weak)) { 2583 if (Args.hasArg(OPT_fno_objc_infer_related_result_type)) 2586 if (Args.hasArg(OPT_fobjc_subscripting_legacy_runtime)) 2591 if (Arg *A = Args.getLastArg(options::OPT_fgnuc_version_EQ)) { 2601 << A->getAsString(Args) << A->getValue(); 2606 if (Args.hasArg(OPT_fgnu89_inline)) { 2614 if (Args.hasArg(OPT_fapple_kext)) { 2621 if (Args.hasArg(OPT_print_ivar_layout)) 2624 if (Args.hasArg(OPT_fno_constant_cfstrings)) 2626 if (const auto *A = Args.getLastArg(OPT_fcf_runtime_abi_EQ)) 2637 if (Args.hasArg(OPT_fzvector)) 2640 if (Args.hasArg(OPT_pthread)) 2644 if (Arg *visOpt = Args.getLastArg(OPT_fvisibility)) { 2645 Opts.setValueVisibilityMode(parseVisibility(visOpt, Args, Diags)); 2651 if (Arg *typeVisOpt = Args.getLastArg(OPT_ftype_visibility)) { 2652 Opts.setTypeVisibilityMode(parseVisibility(typeVisOpt, Args, Diags)); 2657 if (Args.hasArg(OPT_fvisibility_inlines_hidden)) 2660 if (Args.hasArg(OPT_fvisibility_global_new_delete_hidden)) 2663 if (Args.hasArg(OPT_fapply_global_visibility_to_externs)) 2666 if (Args.hasArg(OPT_ftrapv)) { 2670 Args.getLastArgValue(OPT_ftrapv_handler); 2672 else if (Args.hasArg(OPT_fwrapv)) 2675 Opts.MSVCCompat = Args.hasArg(OPT_fms_compatibility); 2676 Opts.MicrosoftExt = Opts.MSVCCompat || Args.hasArg(OPT_fms_extensions); 2677 Opts.AsmBlocks = Args.hasArg(OPT_fasm_blocks) || Opts.MicrosoftExt; 2679 if (const Arg *A = Args.getLastArg(OPT_fms_compatibility_version)) { 2682 Diags.Report(diag::err_drv_invalid_value) << A->getAsString(Args) 2694 Args.hasFlag(OPT_ftrigraphs, OPT_fno_trigraphs, Opts.Trigraphs); 2696 Opts.DollarIdents = Args.hasFlag(OPT_fdollars_in_identifiers, 2699 Opts.PascalStrings = Args.hasArg(OPT_fpascal_strings); 2700 Opts.VtorDispMode = getLastArgIntValue(Args, OPT_vtordisp_mode_EQ, 1, Diags); 2701 Opts.Borland = Args.hasArg(OPT_fborland_extensions); 2702 Opts.WritableStrings = Args.hasArg(OPT_fwritable_strings); 2703 Opts.ConstStrings = Args.hasFlag(OPT_fconst_strings, OPT_fno_const_strings, 2705 if (Arg *A = Args.getLastArg(OPT_flax_vector_conversions_EQ)) { 2715 << A->getAsString(Args) << A->getValue(); 2717 if (Args.hasArg(OPT_fno_threadsafe_statics)) 2719 Opts.Exceptions = Args.hasArg(OPT_fexceptions); 2720 Opts.ObjCExceptions = Args.hasArg(OPT_fobjc_exceptions); 2721 Opts.CXXExceptions = Args.hasArg(OPT_fcxx_exceptions); 2725 Args.hasFlag(OPT_ffixed_point, OPT_fno_fixed_point, /*Default=*/false) && 2728 Args.hasFlag(OPT_fpadding_on_unsigned_fixed_point, 2734 Arg *A = Args.getLastArg( 2750 Opts.ExternCNoUnwind = Args.hasArg(OPT_fexternc_nounwind); 2751 Opts.TraditionalCPP = Args.hasArg(OPT_traditional_cpp); 2753 Opts.RTTI = Opts.CPlusPlus && !Args.hasArg(OPT_fno_rtti); 2754 Opts.RTTIData = Opts.RTTI && !Args.hasArg(OPT_fno_rtti_data); 2755 Opts.Blocks = Args.hasArg(OPT_fblocks) || (Opts.OpenCL 2757 Opts.BlocksRuntimeOptional = Args.hasArg(OPT_fblocks_runtime_optional); 2758 Opts.Coroutines = Opts.CPlusPlus2a || Args.hasArg(OPT_fcoroutines_ts); 2761 Args.hasFlag(OPT_fdouble_square_bracket_attributes, 2766 Opts.ModulesTS = Args.hasArg(OPT_fmodules_ts); 2768 Args.hasArg(OPT_fmodules) || Opts.ModulesTS || Opts.CPlusPlusModules; 2769 Opts.ModulesStrictDeclUse = Args.hasArg(OPT_fmodules_strict_decluse); 2771 Args.hasArg(OPT_fmodules_decluse) || Opts.ModulesStrictDeclUse; 2775 Args.hasArg(OPT_fmodules_local_submodule_visibility) || Opts.ModulesTS || 2777 Opts.ModulesCodegen = Args.hasArg(OPT_fmodules_codegen); 2778 Opts.ModulesDebugInfo = Args.hasArg(OPT_fmodules_debuginfo); 2780 !Args.hasArg(OPT_fno_modules_search_all) && 2781 Args.hasArg(OPT_fmodules_search_all); 2782 Opts.ModulesErrorRecovery = !Args.hasArg(OPT_fno_modules_error_recovery); 2783 Opts.ImplicitModules = !Args.hasArg(OPT_fno_implicit_modules); 2784 Opts.CharIsSigned = Opts.OpenCL || !Args.hasArg(OPT_fno_signed_char); 2785 Opts.WChar = Opts.CPlusPlus && !Args.hasArg(OPT_fno_wchar); 2786 Opts.Char8 = Args.hasFlag(OPT_fchar8__t, OPT_fno_char8__t, Opts.CPlusPlus2a); 2787 if (const Arg *A = Args.getLastArg(OPT_fwchar_type_EQ)) { 2796 Opts.WCharIsSigned = Args.hasFlag(OPT_fsigned_wchar, OPT_fno_signed_wchar, true); 2797 Opts.ShortEnums = Args.hasArg(OPT_fshort_enums); 2798 Opts.Freestanding = Args.hasArg(OPT_ffreestanding); 2799 Opts.NoBuiltin = Args.hasArg(OPT_fno_builtin) || Opts.Freestanding; 2801 getAllNoBuiltinFuncValues(Args, Opts.NoBuiltinFuncs); 2802 Opts.NoMathBuiltin = Args.hasArg(OPT_fno_math_builtin); 2804 Args.hasArg(OPT_frelaxed_template_template_args); 2805 Opts.SizedDeallocation = Args.hasArg(OPT_fsized_deallocation); 2807 Args.hasFlag(OPT_faligned_allocation, OPT_fno_aligned_allocation, 2810 Opts.AlignedAllocation && Args.hasArg(OPT_aligned_alloc_unavailable); 2812 getLastArgIntValue(Args, OPT_fnew_alignment_EQ, 0, Diags); 2814 Arg *A = Args.getLastArg(OPT_fnew_alignment_EQ); 2815 Diags.Report(diag::err_fe_invalid_alignment) << A->getAsString(Args) 2819 Opts.ConceptsTS = Args.hasArg(OPT_fconcepts_ts); 2820 Opts.HeinousExtensions = Args.hasArg(OPT_fheinous_gnu_extensions); 2821 Opts.AccessControl = !Args.hasArg(OPT_fno_access_control); 2822 Opts.ElideConstructors = !Args.hasArg(OPT_fno_elide_constructors); 2823 Opts.MathErrno = !Opts.OpenCL && Args.hasArg(OPT_fmath_errno); 2825 getLastArgIntValue(Args, OPT_ftemplate_depth, 1024, Diags); 2827 getLastArgIntValue(Args, OPT_foperator_arrow_depth, 256, Diags); 2829 getLastArgIntValue(Args, OPT_fconstexpr_depth, 512, Diags); 2831 getLastArgIntValue(Args, OPT_fconstexpr_steps, 1048576, Diags); 2833 Args.hasArg(OPT_fexperimental_new_constant_interpreter); 2835 Args.hasArg(OPT_fforce_experimental_new_constant_interpreter); 2836 Opts.BracketDepth = getLastArgIntValue(Args, OPT_fbracket_depth, 256, Diags); 2837 Opts.DelayedTemplateParsing = Args.hasArg(OPT_fdelayed_template_parsing); 2839 getLastArgIntValue(Args, OPT_Wlarge_by_value_copy_EQ, 0, Diags); 2840 Opts.MSBitfields = Args.hasArg(OPT_mms_bitfields); 2842 Args.getLastArgValue(OPT_fconstant_string_class); 2844 !Args.hasArg(OPT_disable_objc_default_synthesize_properties); 2846 Args.hasArg(OPT_fencode_extended_block_signature); 2847 Opts.EmitAllDecls = Args.hasArg(OPT_femit_all_decls); 2848 Opts.PackStruct = getLastArgIntValue(Args, OPT_fpack_struct_EQ, 0, Diags); 2849 Opts.MaxTypeAlign = getLastArgIntValue(Args, OPT_fmax_type_align_EQ, 0, Diags); 2850 Opts.AlignDouble = Args.hasArg(OPT_malign_double); 2851 Opts.LongDoubleSize = Args.hasArg(OPT_mlong_double_128) 2853 : Args.hasArg(OPT_mlong_double_64) ? 64 : 0; 2854 Opts.PPCIEEELongDouble = Args.hasArg(OPT_mabi_EQ_ieeelongdouble); 2855 Opts.PICLevel = getLastArgIntValue(Args, OPT_pic_level, 0, Diags); 2856 Opts.ROPI = Args.hasArg(OPT_fropi); 2857 Opts.RWPI = Args.hasArg(OPT_frwpi); 2858 Opts.PIE = Args.hasArg(OPT_pic_is_pie); 2859 Opts.Static = Args.hasArg(OPT_static_define); 2860 Opts.DumpRecordLayoutsSimple = Args.hasArg(OPT_fdump_record_layouts_simple); 2862 || Args.hasArg(OPT_fdump_record_layouts); 2863 Opts.DumpVTableLayouts = Args.hasArg(OPT_fdump_vtable_layouts); 2864 Opts.SpellChecking = !Args.hasArg(OPT_fno_spell_checking); 2865 Opts.NoBitFieldTypeAlign = Args.hasArg(OPT_fno_bitfield_type_align); 2866 Opts.SinglePrecisionConstants = Args.hasArg(OPT_cl_single_precision_constant); 2867 Opts.FastRelaxedMath = Args.hasArg(OPT_cl_fast_relaxed_math); 2868 Opts.HexagonQdsp6Compat = Args.hasArg(OPT_mqdsp6_compat); 2869 Opts.FakeAddressSpaceMap = Args.hasArg(OPT_ffake_address_space_map); 2870 Opts.ParseUnknownAnytype = Args.hasArg(OPT_funknown_anytype); 2871 Opts.DebuggerSupport = Args.hasArg(OPT_fdebugger_support); 2872 Opts.DebuggerCastResultToId = Args.hasArg(OPT_fdebugger_cast_result_to_id); 2873 Opts.DebuggerObjCLiteral = Args.hasArg(OPT_fdebugger_objc_literal); 2874 Opts.ApplePragmaPack = Args.hasArg(OPT_fapple_pragma_pack); 2875 Opts.ModuleName = Args.getLastArgValue(OPT_fmodule_name_EQ); 2877 Opts.AppExt = Args.hasArg(OPT_fapplication_extension); 2878 Opts.ModuleFeatures = Args.getAllArgValues(OPT_fmodule_feature); 2880 Opts.NativeHalfType |= Args.hasArg(OPT_fnative_half_type); 2881 Opts.NativeHalfArgsAndReturns |= Args.hasArg(OPT_fnative_half_arguments_and_returns); 2884 Opts.HalfArgsAndReturns = Args.hasArg(OPT_fallow_half_arguments_and_returns) 2886 Opts.GNUAsm = !Args.hasArg(OPT_fno_gnu_inline_asm); 2887 Opts.Cmse = Args.hasArg(OPT_mcmse); // Armv8-M Security Extensions 2898 Args.hasFlag(OPT_fdeclspec, OPT_fno_declspec, 2901 if (Arg *A = Args.getLastArg(OPT_faddress_space_map_mangling_EQ)) { 2923 if (Arg *A = Args.getLastArg(OPT_fms_memptr_rep_EQ)) { 2942 if (Arg *A = Args.getLastArg(OPT_fdefault_calling_conv_EQ)) { 2971 if (Arg *A = Args.getLastArg(OPT_mrtd)) { 2986 Opts.OpenMP = Args.hasArg(options::OPT_fopenmp) ? 45 : 0; 2989 Args.hasFlag(options::OPT_fopenmp_simd, options::OPT_fno_openmp_simd, 2993 Opts.OpenMP && !Args.hasArg(options::OPT_fnoopenmp_use_tls); 2995 Opts.OpenMP && Args.hasArg(options::OPT_fopenmp_is_device); 2997 Opts.OpenMPIsDevice || Args.hasArg(options::OPT_fopenmp_targets_EQ); 3001 Args, OPT_fopenmp_version_EQ, 3030 getLastArgIntValue(Args, options::OPT_fopenmp_cuda_number_of_sm_EQ, 3033 getLastArgIntValue(Args, options::OPT_fopenmp_cuda_blocks_per_sm_EQ, 3036 Args, options::OPT_fopenmp_cuda_teams_reduction_recs_num_EQ, 3043 Args.hasArg(options::OPT_fopenmp_optimistic_collapse) ? 1 : 0; 3046 if (Arg *A = Args.getLastArg(options::OPT_fopenmp_targets_EQ)) { 3067 if (Arg *A = Args.getLastArg(options::OPT_fopenmp_host_ir_file_path)) { 3074 Opts.SYCLIsDevice = Args.hasArg(options::OPT_fsycl_is_device); 3078 Args.hasArg(options::OPT_fopenmp_cuda_mode); 3083 Args.hasArg(options::OPT_fopenmp_cuda_force_full_runtime); 3086 Opts.Deprecated = Args.hasFlag(OPT_fdeprecated_macro, 3091 unsigned Opt = getOptimizationLevel(Args, IK, Diags), 3092 OptSize = getOptimizationLevelSize(Args); 3100 if (Arg *InlineArg = Args.getLastArg( 3106 Opts.FastMath = Args.hasArg(OPT_ffast_math) || 3107 Args.hasArg(OPT_cl_fast_relaxed_math); 3108 Opts.FiniteMathOnly = Args.hasArg(OPT_ffinite_math_only) || 3109 Args.hasArg(OPT_cl_finite_math_only) || 3110 Args.hasArg(OPT_cl_fast_relaxed_math); 3111 Opts.UnsafeFPMath = Args.hasArg(OPT_menable_unsafe_fp_math) || 3112 Args.hasArg(OPT_cl_unsafe_math_optimizations) || 3113 Args.hasArg(OPT_cl_fast_relaxed_math); 3115 if (Arg *A = Args.getLastArg(OPT_ffp_contract)) { 3124 Diags.Report(diag::err_drv_invalid_value) << A->getAsString(Args) << Val; 3128 Args.hasArg(OPT_fretain_comments_from_system_headers); 3130 unsigned SSP = getLastArgIntValue(Args, OPT_stack_protector, 0, Diags); 3134 << Args.getLastArg(OPT_stack_protector)->getAsString(Args) << SSP; 3134 << Args.getLastArg(OPT_stack_protector)->getAsString(Args) << SSP; 3142 if (Arg *A = Args.getLastArg(OPT_ftrivial_auto_var_init)) { 3152 Diags.Report(diag::err_drv_invalid_value) << A->getAsString(Args) << Val; 3156 parseSanitizerKinds("-fsanitize=", Args.getAllArgValues(OPT_fsanitize_EQ), 3160 getLastArgIntValue(Args, OPT_fsanitize_address_field_padding, 0, Diags); 3161 Opts.SanitizerBlacklistFiles = Args.getAllArgValues(OPT_fsanitize_blacklist); 3165 Args.hasFlag(OPT_fxray_instrument, OPT_fnoxray_instrument, false); 3169 Args.hasFlag(OPT_fxray_always_emit_customevents, 3174 Args.hasFlag(OPT_fxray_always_emit_typedevents, 3179 Args.getAllArgValues(OPT_fxray_always_instrument); 3181 Args.getAllArgValues(OPT_fxray_never_instrument); 3182 Opts.XRayAttrListFiles = Args.getAllArgValues(OPT_fxray_attr_list); 3185 Opts.ForceEmitVTables = Args.hasArg(OPT_fforce_emit_vtables); 3188 Opts.AllowEditorPlaceholders = Args.hasArg(OPT_fallow_editor_placeholders); 3190 Opts.RegisterStaticDestructors = !Args.hasArg(OPT_fno_cxx_static_destructors); 3192 if (Arg *A = Args.getLastArg(OPT_fclang_abi_compat_EQ)) { 3221 << A->getAsString(Args) << A->getValue(); 3225 Opts.CompleteMemberPointers = Args.hasArg(OPT_fcomplete_member_pointers); 3226 Opts.BuildingPCHWithObjectFile = Args.hasArg(OPT_building_pch_with_obj);