Lines Matching refs:CI

144   CompilerInstance &CI = getCompilerInstance();  in getCurrentModule()  local
145 return CI.getPreprocessor().getHeaderSearchInfo().lookupModule( in getCurrentModule()
146 CI.getLangOpts().CurrentModule, /*AllowSearch*/false); in getCurrentModule()
150 FrontendAction::CreateWrappedASTConsumer(CompilerInstance &CI, in CreateWrappedASTConsumer() argument
152 std::unique_ptr<ASTConsumer> Consumer = CreateASTConsumer(CI, InFile); in CreateWrappedASTConsumer()
158 for (const std::string &Arg : CI.getFrontendOpts().AddPluginActions) { in CreateWrappedASTConsumer()
166 CI.getDiagnostics().Report(diag::err_fe_invalid_plugin_name) << Arg; in CreateWrappedASTConsumer()
178 if (CI.hasCodeCompletionConsumer()) in CreateWrappedASTConsumer()
192 if (llvm::any_of(CI.getFrontendOpts().AddPluginActions, in CreateWrappedASTConsumer()
201 CI, in CreateWrappedASTConsumer()
202 CI.getFrontendOpts().PluginArgs[std::string(Plugin.getName())])) { in CreateWrappedASTConsumer()
203 std::unique_ptr<ASTConsumer> PluginConsumer = P->CreateASTConsumer(CI, InFile); in CreateWrappedASTConsumer()
230 static SourceLocation ReadOriginalFileName(CompilerInstance &CI, in ReadOriginalFileName() argument
233 auto &SourceMgr = CI.getSourceManager(); in ReadOriginalFileName()
241 new Lexer(MainFileID, *MainFileBuf, SourceMgr, CI.getLangOpts())); in ReadOriginalFileName()
259 if (Lexer::getSpelling(LineNoLoc, Buffer, SourceMgr, CI.getLangOpts()) in ReadOriginalFileName()
268 StringLiteralParser Literal(T, CI.getPreprocessor()); in ReadOriginalFileName()
277 CI.getSourceManager().AddLineNote( in ReadOriginalFileName()
428 static bool loadModuleMapForModuleBuild(CompilerInstance &CI, bool IsSystem, in loadModuleMapForModuleBuild() argument
432 auto &SrcMgr = CI.getSourceManager(); in loadModuleMapForModuleBuild()
433 HeaderSearch &HS = CI.getPreprocessor().getHeaderSearchInfo(); in loadModuleMapForModuleBuild()
444 ReadOriginalFileName(CI, PresumedModuleMapFile, /*IsModuleMap*/ true); in loadModuleMapForModuleBuild()
446 Offset = CI.getSourceManager().getDecomposedLoc(EndOfLineMarker).second; in loadModuleMapForModuleBuild()
460 static Module *prepareToBuildModule(CompilerInstance &CI, in prepareToBuildModule() argument
462 if (CI.getLangOpts().CurrentModule.empty()) { in prepareToBuildModule()
463 CI.getDiagnostics().Report(diag::err_missing_module_name); in prepareToBuildModule()
473 HeaderSearch &HS = CI.getPreprocessor().getHeaderSearchInfo(); in prepareToBuildModule()
474 Module *M = HS.lookupModule(CI.getLangOpts().CurrentModule, in prepareToBuildModule()
477 CI.getDiagnostics().Report(diag::err_missing_module) in prepareToBuildModule()
478 << CI.getLangOpts().CurrentModule << ModuleMapFilename; in prepareToBuildModule()
484 if (Preprocessor::checkModuleIsAvailable(CI.getLangOpts(), CI.getTarget(), in prepareToBuildModule()
485 CI.getDiagnostics(), M)) in prepareToBuildModule()
490 CI.getPreprocessor().setMainFileDir(M->Directory); in prepareToBuildModule()
496 StringRef OriginalModuleMapName = CI.getFrontendOpts().OriginalModuleMap; in prepareToBuildModule()
499 CI.getFileManager().getFile(OriginalModuleMapName, in prepareToBuildModule()
502 CI.getDiagnostics().Report(diag::err_module_map_not_found) in prepareToBuildModule()
506 if (*OriginalModuleMap != CI.getSourceManager().getFileEntryForID( in prepareToBuildModule()
507 CI.getSourceManager().getMainFileID())) { in prepareToBuildModule()
509 CI.getPreprocessor().getHeaderSearchInfo().getModuleMap() in prepareToBuildModule()
517 SourceManager &SourceMgr = CI.getSourceManager(); in prepareToBuildModule()
519 SourceMgr.pushModuleBuildStack(CI.getLangOpts().CurrentModule, in prepareToBuildModule()
526 getInputBufferForModule(CompilerInstance &CI, Module *M) { in getInputBufferForModule() argument
527 FileManager &FileMgr = CI.getFileManager(); in getInputBufferForModule()
534 HeaderContents, CI.getLangOpts(), M->IsExternC); in getInputBufferForModule()
536 CI.getLangOpts(), FileMgr, CI.getDiagnostics(), in getInputBufferForModule()
537 CI.getPreprocessor().getHeaderSearchInfo().getModuleMap(), M, in getInputBufferForModule()
541 CI.getDiagnostics().Report(diag::err_module_cannot_create_includes) in getInputBufferForModule()
550 bool FrontendAction::BeginSourceFile(CompilerInstance &CI, in BeginSourceFile() argument
556 setCompilerInstance(&CI); in BeginSourceFile()
561 if (!BeginInvocation(CI)) in BeginSourceFile()
567 IntrusiveRefCntPtr<DiagnosticsEngine> Diags(&CI.getDiagnostics()); in BeginSourceFile()
579 std::string(InputFile), CI.getPCHContainerReader(), in BeginSourceFile()
580 ASTUnit::LoadPreprocessorOnly, ASTDiags, CI.getFileSystemOpts(), in BeginSourceFile()
581 CI.getCodeGenOpts().DebugTypeExtRefs); in BeginSourceFile()
587 CI.getHeaderSearchOpts() = AST->getHeaderSearchOpts(); in BeginSourceFile()
588 CI.getPreprocessorOpts() = AST->getPreprocessorOpts(); in BeginSourceFile()
589 CI.getLangOpts() = AST->getLangOpts(); in BeginSourceFile()
593 CI.setFileManager(&AST->getFileManager()); in BeginSourceFile()
594 CI.createSourceManager(CI.getFileManager()); in BeginSourceFile()
595 CI.getSourceManager().initializeForReplay(AST->getSourceManager()); in BeginSourceFile()
606 CI.getFrontendOpts().ModuleFiles.push_back(MF.FileName); in BeginSourceFile()
610 CI.getFrontendOpts().ModuleMapFiles.push_back( in BeginSourceFile()
641 IntrusiveRefCntPtr<DiagnosticsEngine> Diags(&CI.getDiagnostics()); in BeginSourceFile()
647 std::string(InputFile), CI.getPCHContainerReader(), in BeginSourceFile()
648 ASTUnit::LoadEverything, Diags, CI.getFileSystemOpts(), in BeginSourceFile()
649 CI.getCodeGenOpts().DebugTypeExtRefs); in BeginSourceFile()
655 CI.getDiagnosticClient().BeginSourceFile(CI.getLangOpts(), nullptr); in BeginSourceFile()
660 CI.setFileManager(&AST->getFileManager()); in BeginSourceFile()
661 CI.setSourceManager(&AST->getSourceManager()); in BeginSourceFile()
662 CI.setPreprocessor(AST->getPreprocessorPtr()); in BeginSourceFile()
663 Preprocessor &PP = CI.getPreprocessor(); in BeginSourceFile()
666 CI.setASTContext(&AST->getASTContext()); in BeginSourceFile()
671 if (!BeginSourceFileAction(CI)) in BeginSourceFile()
675 CI.setASTConsumer(CreateWrappedASTConsumer(CI, InputFile)); in BeginSourceFile()
676 if (!CI.hasASTConsumer()) in BeginSourceFile()
683 if (!CI.hasFileManager()) { in BeginSourceFile()
684 if (!CI.createFileManager()) { in BeginSourceFile()
688 if (!CI.hasSourceManager()) in BeginSourceFile()
689 CI.createSourceManager(CI.getFileManager()); in BeginSourceFile()
693 for (const auto &F : CI.getFrontendOpts().ModulesEmbedFiles) { in BeginSourceFile()
694 if (auto FE = CI.getFileManager().getFile(F, /*openFile*/true)) in BeginSourceFile()
695 CI.getSourceManager().setFileIsTransient(*FE); in BeginSourceFile()
697 CI.getDiagnostics().Report(diag::err_modules_embed_file_not_found) << F; in BeginSourceFile()
699 if (CI.getFrontendOpts().ModulesEmbedAllFiles) in BeginSourceFile()
700 CI.getSourceManager().setAllFilesAreTransient(true); in BeginSourceFile()
708 CI.getDiagnosticClient().BeginSourceFile(CI.getLangOpts(), nullptr); in BeginSourceFile()
712 if (!BeginSourceFileAction(CI)) in BeginSourceFile()
716 if (!CI.InitializeSourceManager(CurrentInput)) in BeginSourceFile()
724 if (!CI.getPreprocessorOpts().ImplicitPCHInclude.empty()) { in BeginSourceFile()
725 FileManager &FileMgr = CI.getFileManager(); in BeginSourceFile()
726 PreprocessorOptions &PPOpts = CI.getPreprocessorOpts(); in BeginSourceFile()
728 std::string SpecificModuleCachePath = CI.getSpecificModuleCachePath(); in BeginSourceFile()
740 Dir->path(), FileMgr, CI.getPCHContainerReader(), in BeginSourceFile()
741 CI.getLangOpts(), CI.getTargetOpts(), CI.getPreprocessorOpts(), in BeginSourceFile()
750 CI.getDiagnostics().Report(diag::err_fe_no_pch_in_dir) << PCHInclude; in BeginSourceFile()
759 CI.createPreprocessor(getTranslationUnitKind()); in BeginSourceFile()
762 CI.getDiagnosticClient().BeginSourceFile(CI.getLangOpts(), in BeginSourceFile()
763 &CI.getPreprocessor()); in BeginSourceFile()
767 if (!CI.InitializeSourceManager(Input)) in BeginSourceFile()
773 CI.getLangOpts().setCompilingModule(LangOptions::CMK_ModuleMap); in BeginSourceFile()
777 if (loadModuleMapForModuleBuild(CI, Input.isSystem(), in BeginSourceFile()
782 auto *CurrentModule = prepareToBuildModule(CI, Input.getFile()); in BeginSourceFile()
790 CI.getPreprocessor().setSkipMainFilePreamble(OffsetToContents, true); in BeginSourceFile()
793 auto Buffer = getInputBufferForModule(CI, CurrentModule); in BeginSourceFile()
799 auto &SourceMgr = CI.getSourceManager(); in BeginSourceFile()
807 if (!BeginSourceFileAction(CI)) in BeginSourceFile()
811 for (const auto &Filename : CI.getFrontendOpts().ModuleMapFiles) { in BeginSourceFile()
812 if (auto File = CI.getFileManager().getFile(Filename)) in BeginSourceFile()
813 CI.getPreprocessor().getHeaderSearchInfo().loadModuleMapFile( in BeginSourceFile()
816 CI.getDiagnostics().Report(diag::err_module_map_not_found) << Filename; in BeginSourceFile()
821 CI.getPreprocessor() in BeginSourceFile()
831 CI.createASTContext(); in BeginSourceFile()
837 ReadOriginalFileName(CI, PresumedInputFile); in BeginSourceFile()
840 CreateWrappedASTConsumer(CI, PresumedInputFile); in BeginSourceFile()
846 CI.getASTContext().setASTMutationListener(Consumer->GetASTMutationListener()); in BeginSourceFile()
848 if (!CI.getPreprocessorOpts().ChainedIncludes.empty()) { in BeginSourceFile()
851 source = createChainedIncludesSource(CI, FinalReader); in BeginSourceFile()
854 CI.setASTReader(static_cast<ASTReader *>(FinalReader.get())); in BeginSourceFile()
855 CI.getASTContext().setExternalSource(source); in BeginSourceFile()
856 } else if (CI.getLangOpts().Modules || in BeginSourceFile()
857 !CI.getPreprocessorOpts().ImplicitPCHInclude.empty()) { in BeginSourceFile()
863 if (CI.getPreprocessorOpts().DumpDeserializedPCHDecls) { in BeginSourceFile()
868 if (!CI.getPreprocessorOpts().DeserializedPCHDeclsToErrorOn.empty()) { in BeginSourceFile()
870 CI.getASTContext(), in BeginSourceFile()
871 CI.getPreprocessorOpts().DeserializedPCHDeclsToErrorOn, in BeginSourceFile()
875 if (!CI.getPreprocessorOpts().ImplicitPCHInclude.empty()) { in BeginSourceFile()
876 CI.createPCHExternalASTSource( in BeginSourceFile()
877 CI.getPreprocessorOpts().ImplicitPCHInclude, in BeginSourceFile()
878 CI.getPreprocessorOpts().DisablePCHOrModuleValidation, in BeginSourceFile()
879 CI.getPreprocessorOpts().AllowPCHWithCompilerErrors, in BeginSourceFile()
881 if (!CI.getASTContext().getExternalSource()) in BeginSourceFile()
887 if (CI.getLangOpts().Modules || !CI.hasASTContext() || in BeginSourceFile()
888 !CI.getASTContext().getExternalSource()) { in BeginSourceFile()
889 CI.createASTReader(); in BeginSourceFile()
890 CI.getASTReader()->setDeserializationListener(DeserialListener, in BeginSourceFile()
895 CI.setASTConsumer(std::move(Consumer)); in BeginSourceFile()
896 if (!CI.hasASTConsumer()) in BeginSourceFile()
902 if (CI.getLangOpts().Modules || !CI.hasASTContext() || in BeginSourceFile()
903 !CI.getASTContext().getExternalSource()) { in BeginSourceFile()
904 Preprocessor &PP = CI.getPreprocessor(); in BeginSourceFile()
910 assert((!CI.getLangOpts().Modules || CI.getASTReader()) && in BeginSourceFile()
916 for (const auto &ModuleFile : CI.getFrontendOpts().ModuleFiles) in BeginSourceFile()
917 if (!CI.loadModuleFile(ModuleFile)) in BeginSourceFile()
922 if (!CI.getFrontendOpts().OverrideRecordLayoutsFile.empty() && in BeginSourceFile()
923 CI.hasASTContext() && !CI.getASTContext().getExternalSource()) { in BeginSourceFile()
926 CI.getFrontendOpts().OverrideRecordLayoutsFile)); in BeginSourceFile()
927 CI.getASTContext().setExternalSource(Override); in BeginSourceFile()
936 CI.getDiagnosticClient().EndSourceFile(); in BeginSourceFile()
937 CI.clearOutputFiles(/*EraseFiles=*/true); in BeginSourceFile()
938 CI.getLangOpts().setCompilingModule(LangOptions::CMK_None); in BeginSourceFile()
945 CompilerInstance &CI = getCompilerInstance(); in Execute() local
947 if (CI.hasFrontendTimer()) { in Execute()
948 llvm::TimeRegion Timer(CI.getFrontendTimer()); in Execute()
955 if (CI.shouldBuildGlobalModuleIndex() && CI.hasFileManager() && in Execute()
956 CI.hasPreprocessor()) { in Execute()
958 CI.getPreprocessor().getHeaderSearchInfo().getModuleCachePath(); in Execute()
961 CI.getFileManager(), CI.getPCHContainerReader(), Cache)) { in Execute()
974 CompilerInstance &CI = getCompilerInstance(); in EndSourceFile() local
977 CI.getDiagnosticClient().EndSourceFile(); in EndSourceFile()
980 if (CI.hasPreprocessor()) in EndSourceFile()
981 CI.getPreprocessor().EndSourceFile(); in EndSourceFile()
989 bool DisableFree = CI.getFrontendOpts().DisableFree; in EndSourceFile()
991 CI.resetAndLeakSema(); in EndSourceFile()
992 CI.resetAndLeakASTContext(); in EndSourceFile()
993 llvm::BuryPointer(CI.takeASTConsumer().get()); in EndSourceFile()
995 CI.setSema(nullptr); in EndSourceFile()
996 CI.setASTContext(nullptr); in EndSourceFile()
997 CI.setASTConsumer(nullptr); in EndSourceFile()
1000 if (CI.getFrontendOpts().ShowStats) { in EndSourceFile()
1002 CI.getPreprocessor().PrintStats(); in EndSourceFile()
1003 CI.getPreprocessor().getIdentifierTable().PrintStats(); in EndSourceFile()
1004 CI.getPreprocessor().getHeaderSearchInfo().PrintStats(); in EndSourceFile()
1005 CI.getSourceManager().PrintStats(); in EndSourceFile()
1011 CI.clearOutputFiles(/*EraseFiles=*/shouldEraseOutputFiles()); in EndSourceFile()
1015 CI.resetAndLeakPreprocessor(); in EndSourceFile()
1016 CI.resetAndLeakSourceManager(); in EndSourceFile()
1017 CI.resetAndLeakFileManager(); in EndSourceFile()
1020 CI.setPreprocessor(nullptr); in EndSourceFile()
1021 CI.setSourceManager(nullptr); in EndSourceFile()
1022 CI.setFileManager(nullptr); in EndSourceFile()
1028 CI.getLangOpts().setCompilingModule(LangOptions::CMK_None); in EndSourceFile()
1040 CompilerInstance &CI = getCompilerInstance(); in ExecuteAction() local
1041 if (!CI.hasPreprocessor()) in ExecuteAction()
1047 !CI.getFrontendOpts().CodeCompletionAt.FileName.empty()) in ExecuteAction()
1048 CI.createCodeCompletionConsumer(); in ExecuteAction()
1052 if (CI.hasCodeCompletionConsumer()) in ExecuteAction()
1053 CompletionConsumer = &CI.getCodeCompletionConsumer(); in ExecuteAction()
1055 if (!CI.hasSema()) in ExecuteAction()
1056 CI.createSema(getTranslationUnitKind(), CompletionConsumer); in ExecuteAction()
1058 ParseAST(CI.getSema(), CI.getFrontendOpts().ShowStats, in ExecuteAction()
1059 CI.getFrontendOpts().SkipFunctionBodies); in ExecuteAction()
1065 PreprocessorFrontendAction::CreateASTConsumer(CompilerInstance &CI, in CreateASTConsumer() argument
1070 bool WrapperFrontendAction::PrepareToExecuteAction(CompilerInstance &CI) { in PrepareToExecuteAction() argument
1071 return WrappedAction->PrepareToExecuteAction(CI); in PrepareToExecuteAction()
1074 WrapperFrontendAction::CreateASTConsumer(CompilerInstance &CI, in CreateASTConsumer() argument
1076 return WrappedAction->CreateASTConsumer(CI, InFile); in CreateASTConsumer()
1078 bool WrapperFrontendAction::BeginInvocation(CompilerInstance &CI) { in BeginInvocation() argument
1079 return WrappedAction->BeginInvocation(CI); in BeginInvocation()
1081 bool WrapperFrontendAction::BeginSourceFileAction(CompilerInstance &CI) { in BeginSourceFileAction() argument
1083 WrappedAction->setCompilerInstance(&CI); in BeginSourceFileAction()
1084 auto Ret = WrappedAction->BeginSourceFileAction(CI); in BeginSourceFileAction()