Lines Matching refs:frontend

2007                                       frontend::ActionKind Action,
2027 if (Action == frontend::PrintPreprocessedInput || !ShowLineMarkers)
2349 /// frontend action. Note: The pair {frontend::PluginAction, OPT_plugin} is
2351 /// frontend options.
2353 static const std::pair<frontend::ActionKind, unsigned> Table[] = {
2354 {frontend::ASTDeclList, OPT_ast_list},
2356 {frontend::ASTDump, OPT_ast_dump_all_EQ},
2357 {frontend::ASTDump, OPT_ast_dump_all},
2358 {frontend::ASTDump, OPT_ast_dump_EQ},
2359 {frontend::ASTDump, OPT_ast_dump},
2360 {frontend::ASTDump, OPT_ast_dump_lookups},
2361 {frontend::ASTDump, OPT_ast_dump_decl_types},
2363 {frontend::ASTPrint, OPT_ast_print},
2364 {frontend::ASTView, OPT_ast_view},
2365 {frontend::DumpCompilerOptions, OPT_compiler_options_dump},
2366 {frontend::DumpRawTokens, OPT_dump_raw_tokens},
2367 {frontend::DumpTokens, OPT_dump_tokens},
2368 {frontend::EmitAssembly, OPT_S},
2369 {frontend::EmitBC, OPT_emit_llvm_bc},
2370 {frontend::EmitHTML, OPT_emit_html},
2371 {frontend::EmitLLVM, OPT_emit_llvm},
2372 {frontend::EmitLLVMOnly, OPT_emit_llvm_only},
2373 {frontend::EmitCodeGenOnly, OPT_emit_codegen_only},
2374 {frontend::EmitCodeGenOnly, OPT_emit_codegen_only},
2375 {frontend::EmitObj, OPT_emit_obj},
2377 {frontend::FixIt, OPT_fixit_EQ},
2378 {frontend::FixIt, OPT_fixit},
2380 {frontend::GenerateModule, OPT_emit_module},
2381 {frontend::GenerateModuleInterface, OPT_emit_module_interface},
2382 {frontend::GenerateHeaderModule, OPT_emit_header_module},
2383 {frontend::GeneratePCH, OPT_emit_pch},
2384 {frontend::GenerateInterfaceStubs, OPT_emit_interface_stubs},
2385 {frontend::InitOnly, OPT_init_only},
2386 {frontend::ParseSyntaxOnly, OPT_fsyntax_only},
2387 {frontend::ModuleFileInfo, OPT_module_file_info},
2388 {frontend::VerifyPCH, OPT_verify_pch},
2389 {frontend::PrintPreamble, OPT_print_preamble},
2390 {frontend::PrintPreprocessedInput, OPT_E},
2391 {frontend::TemplightDump, OPT_templight_dump},
2392 {frontend::RewriteMacros, OPT_rewrite_macros},
2393 {frontend::RewriteObjC, OPT_rewrite_objc},
2394 {frontend::RewriteTest, OPT_rewrite_test},
2395 {frontend::RunAnalysis, OPT_analyze},
2396 {frontend::MigrateSource, OPT_migrate},
2397 {frontend::RunPreprocessorOnly, OPT_Eonly},
2398 {frontend::PrintDependencyDirectivesSourceMinimizerOutput,
2405 /// Maps command line option to frontend action.
2406 static Optional<frontend::ActionKind> getFrontendAction(OptSpecifier &Opt) {
2414 /// Maps frontend action to command line option.
2416 getProgramActionOpt(frontend::ActionKind ProgramAction) {
2443 // Generating a simple flag covers most frontend actions.
2450 assert(Opts.ProgramAction == frontend::PluginAction &&
2458 if (Opts.ProgramAction == frontend::ASTDump) {
2486 if (Opts.ProgramAction == frontend::FixIt && !Opts.FixItSuffix.empty()) {
2598 Opts.ProgramAction = frontend::ParseSyntaxOnly;
2601 Optional<frontend::ActionKind> ProgramAction = getFrontendAction(Opt);
2604 if (ProgramAction == frontend::ASTDump &&
2620 if (ProgramAction == frontend::FixIt && Opt == OPT_fixit_EQ)
2623 if (ProgramAction == frontend::GenerateInterfaceStubs) {
2638 ProgramAction = frontend::ParseSyntaxOnly;
2646 ProgramAction = frontend::ParseSyntaxOnly;
2655 Opts.ProgramAction = frontend::PluginAction;
2699 if (Opts.ProgramAction != frontend::GenerateModule && Opts.IsSystemModule)
2788 if (Opts.ProgramAction == frontend::GenerateModule &&
2840 llvm::ArrayRef<frontend::IncludeDirGroup> Groups,
2853 Matches(*It, {frontend::IndexHeaderMap, frontend::Angled}, None, true);
2856 if (Matches(*It, frontend::IndexHeaderMap, true, true))
2858 if (Matches(*It, frontend::IndexHeaderMap, false, true))
2860 if (Matches(*It, frontend::Angled, true, true))
2862 if (Matches(*It, frontend::Angled, false, true))
2867 if (It->Group == frontend::IndexHeaderMap)
2877 Matches(*It, {frontend::After, frontend::Angled}, false, true);
2880 It->Group == frontend::After ? OPT_iwithprefix : OPT_iwithprefixbefore;
2887 for (; It < End && Matches(*It, {frontend::After}, false, true); ++It)
2889 for (; It < End && Matches(*It, {frontend::Quoted}, false, true); ++It)
2891 for (; It < End && Matches(*It, {frontend::System}, false, None); ++It)
2894 for (; It < End && Matches(*It, {frontend::System}, true, true); ++It)
2896 for (; It < End && Matches(*It, {frontend::System}, true, false); ++It)
2900 for (; It < End && Matches(*It, {frontend::CSystem}, false, true); ++It)
2902 for (; It < End && Matches(*It, {frontend::CXXSystem}, false, true); ++It)
2904 for (; It < End && Matches(*It, {frontend::ObjCSystem}, false, true); ++It)
2906 for (; It < End && Matches(*It, {frontend::ObjCXXSystem}, false, true); ++It)
2914 Matches(*It, {frontend::System, frontend::ExternCSystem}, false, true);
2916 OptSpecifier Opt = It->Group == frontend::System
2996 frontend::IncludeDirGroup Group =
2997 IsIndexHeaderMap ? frontend::IndexHeaderMap : frontend::Angled;
3021 Opts.AddPath(Prefix.str() + A->getValue(), frontend::After, false, true);
3023 Opts.AddPath(Prefix.str() + A->getValue(), frontend::Angled, false, true);
3027 Opts.AddPath(A->getValue(), frontend::After, false, true);
3029 Opts.AddPath(A->getValue(), frontend::Quoted, false, true);
3031 Opts.AddPath(A->getValue(), frontend::System, false,
3034 Opts.AddPath(A->getValue(), frontend::System, true, true);
3036 Opts.AddPath(A->getValue(), frontend::System, /*IsFramework=*/true,
3041 Opts.AddPath(A->getValue(), frontend::CSystem, false, true);
3043 Opts.AddPath(A->getValue(), frontend::CXXSystem, false, true);
3045 Opts.AddPath(A->getValue(), frontend::ObjCSystem, false,true);
3047 Opts.AddPath(A->getValue(), frontend::ObjCXXSystem, false, true);
3052 frontend::IncludeDirGroup Group = frontend::System;
3054 Group = frontend::ExternCSystem;
3203 // FP contract option is used to allow fuse across statements in frontend
4045 static bool isStrictlyPreprocessorAction(frontend::ActionKind Action) {
4047 case frontend::ASTDeclList:
4048 case frontend::ASTDump:
4049 case frontend::ASTPrint:
4050 case frontend::ASTView:
4051 case frontend::EmitAssembly:
4052 case frontend::EmitBC:
4053 case frontend::EmitHTML:
4054 case frontend::EmitLLVM:
4055 case frontend::EmitLLVMOnly:
4056 case frontend::EmitCodeGenOnly:
4057 case frontend::EmitObj:
4058 case frontend::FixIt:
4059 case frontend::GenerateModule:
4060 case frontend::GenerateModuleInterface:
4061 case frontend::GenerateHeaderModule:
4062 case frontend::GeneratePCH:
4063 case frontend::GenerateInterfaceStubs:
4064 case frontend::ParseSyntaxOnly:
4065 case frontend::ModuleFileInfo:
4066 case frontend::VerifyPCH:
4067 case frontend::PluginAction:
4068 case frontend::RewriteObjC:
4069 case frontend::RewriteTest:
4070 case frontend::RunAnalysis:
4071 case frontend::TemplightDump:
4072 case frontend::MigrateSource:
4075 case frontend::DumpCompilerOptions:
4076 case frontend::DumpRawTokens:
4077 case frontend::DumpTokens:
4078 case frontend::InitOnly:
4079 case frontend::PrintPreamble:
4080 case frontend::PrintPreprocessedInput:
4081 case frontend::RewriteMacros:
4082 case frontend::RunPreprocessorOnly:
4083 case frontend::PrintDependencyDirectivesSourceMinimizerOutput:
4086 llvm_unreachable("invalid frontend action");
4162 frontend::ActionKind Action,
4255 CompilerInvocation::StringAllocator SA, frontend::ActionKind Action) {
4278 frontend::ActionKind Action) {
4393 if (Res.getFrontendOpts().ProgramAction == frontend::RewriteObjC)