Lines Matching refs:CI

146   CompilerInstance &CI = getCompilerInstance();  in getCurrentModule()  local
147 return CI.getPreprocessor().getHeaderSearchInfo().lookupModule( in getCurrentModule()
148 CI.getLangOpts().CurrentModule, SourceLocation(), /*AllowSearch*/false); in getCurrentModule()
152 FrontendAction::CreateWrappedASTConsumer(CompilerInstance &CI, in CreateWrappedASTConsumer() argument
154 std::unique_ptr<ASTConsumer> Consumer = CreateASTConsumer(CI, InFile); in CreateWrappedASTConsumer()
160 for (const std::string &Arg : CI.getFrontendOpts().AddPluginActions) { in CreateWrappedASTConsumer()
168 CI.getDiagnostics().Report(diag::err_fe_invalid_plugin_name) << Arg; in CreateWrappedASTConsumer()
180 if (CI.hasCodeCompletionConsumer()) in CreateWrappedASTConsumer()
195 if (llvm::any_of(CI.getFrontendOpts().AddPluginActions, in CreateWrappedASTConsumer()
208 CI, in CreateWrappedASTConsumer()
209 CI.getFrontendOpts().PluginArgs[std::string(Plugin.getName())])) { in CreateWrappedASTConsumer()
210 std::unique_ptr<ASTConsumer> PluginConsumer = P->CreateASTConsumer(CI, InFile); in CreateWrappedASTConsumer()
225 CI.getCodeGenOpts().ClearASTBeforeBackend = false; in CreateWrappedASTConsumer()
242 static SourceLocation ReadOriginalFileName(CompilerInstance &CI, in ReadOriginalFileName() argument
245 auto &SourceMgr = CI.getSourceManager(); in ReadOriginalFileName()
253 new Lexer(MainFileID, *MainFileBuf, SourceMgr, CI.getLangOpts())); in ReadOriginalFileName()
271 if (Lexer::getSpelling(LineNoLoc, Buffer, SourceMgr, CI.getLangOpts()) in ReadOriginalFileName()
280 StringLiteralParser Literal(T, CI.getPreprocessor()); in ReadOriginalFileName()
289 CI.getSourceManager().AddLineNote( in ReadOriginalFileName()
436 static bool loadModuleMapForModuleBuild(CompilerInstance &CI, bool IsSystem, in loadModuleMapForModuleBuild() argument
440 auto &SrcMgr = CI.getSourceManager(); in loadModuleMapForModuleBuild()
441 HeaderSearch &HS = CI.getPreprocessor().getHeaderSearchInfo(); in loadModuleMapForModuleBuild()
452 ReadOriginalFileName(CI, PresumedModuleMapFile, /*IsModuleMap*/ true); in loadModuleMapForModuleBuild()
454 Offset = CI.getSourceManager().getDecomposedLoc(EndOfLineMarker).second; in loadModuleMapForModuleBuild()
469 CI.getLangOpts().ModuleName + ".framework"); in loadModuleMapForModuleBuild()
470 if (auto Dir = CI.getFileManager().getDirectory(InferredFrameworkPath)) in loadModuleMapForModuleBuild()
477 static Module *prepareToBuildModule(CompilerInstance &CI, in prepareToBuildModule() argument
479 if (CI.getLangOpts().CurrentModule.empty()) { in prepareToBuildModule()
480 CI.getDiagnostics().Report(diag::err_missing_module_name); in prepareToBuildModule()
490 HeaderSearch &HS = CI.getPreprocessor().getHeaderSearchInfo(); in prepareToBuildModule()
491 Module *M = HS.lookupModule(CI.getLangOpts().CurrentModule, SourceLocation(), in prepareToBuildModule()
494 CI.getDiagnostics().Report(diag::err_missing_module) in prepareToBuildModule()
495 << CI.getLangOpts().CurrentModule << ModuleMapFilename; in prepareToBuildModule()
501 if (Preprocessor::checkModuleIsAvailable(CI.getLangOpts(), CI.getTarget(), in prepareToBuildModule()
502 CI.getDiagnostics(), M)) in prepareToBuildModule()
507 CI.getPreprocessor().setMainFileDir(M->Directory); in prepareToBuildModule()
513 StringRef OriginalModuleMapName = CI.getFrontendOpts().OriginalModuleMap; in prepareToBuildModule()
516 CI.getFileManager().getFile(OriginalModuleMapName, in prepareToBuildModule()
519 CI.getDiagnostics().Report(diag::err_module_map_not_found) in prepareToBuildModule()
523 if (*OriginalModuleMap != CI.getSourceManager().getFileEntryForID( in prepareToBuildModule()
524 CI.getSourceManager().getMainFileID())) { in prepareToBuildModule()
526 CI.getPreprocessor().getHeaderSearchInfo().getModuleMap() in prepareToBuildModule()
534 SourceManager &SourceMgr = CI.getSourceManager(); in prepareToBuildModule()
536 SourceMgr.pushModuleBuildStack(CI.getLangOpts().CurrentModule, in prepareToBuildModule()
543 getInputBufferForModule(CompilerInstance &CI, Module *M) { in getInputBufferForModule() argument
544 FileManager &FileMgr = CI.getFileManager(); in getInputBufferForModule()
551 HeaderContents, CI.getLangOpts(), M->IsExternC); in getInputBufferForModule()
553 CI.getLangOpts(), FileMgr, CI.getDiagnostics(), in getInputBufferForModule()
554 CI.getPreprocessor().getHeaderSearchInfo().getModuleMap(), M, in getInputBufferForModule()
558 CI.getDiagnostics().Report(diag::err_module_cannot_create_includes) in getInputBufferForModule()
567 bool FrontendAction::BeginSourceFile(CompilerInstance &CI, in BeginSourceFile() argument
573 setCompilerInstance(&CI); in BeginSourceFile()
583 CI.getDiagnosticClient().EndSourceFile(); in BeginSourceFile()
584 CI.setASTConsumer(nullptr); in BeginSourceFile()
585 CI.clearOutputFiles(/*EraseFiles=*/true); in BeginSourceFile()
586 CI.getLangOpts().setCompilingModule(LangOptions::CMK_None); in BeginSourceFile()
591 if (!BeginInvocation(CI)) in BeginSourceFile()
597 IntrusiveRefCntPtr<DiagnosticsEngine> Diags(&CI.getDiagnostics()); in BeginSourceFile()
609 std::string(InputFile), CI.getPCHContainerReader(), in BeginSourceFile()
610 ASTUnit::LoadPreprocessorOnly, ASTDiags, CI.getFileSystemOpts(), in BeginSourceFile()
611 CI.getCodeGenOpts().DebugTypeExtRefs); in BeginSourceFile()
617 CI.getHeaderSearchOpts() = AST->getHeaderSearchOpts(); in BeginSourceFile()
618 CI.getPreprocessorOpts() = AST->getPreprocessorOpts(); in BeginSourceFile()
619 CI.getLangOpts() = AST->getLangOpts(); in BeginSourceFile()
623 CI.setFileManager(&AST->getFileManager()); in BeginSourceFile()
624 CI.createSourceManager(CI.getFileManager()); in BeginSourceFile()
625 CI.getSourceManager().initializeForReplay(AST->getSourceManager()); in BeginSourceFile()
636 CI.getFrontendOpts().ModuleFiles.push_back(MF.FileName); in BeginSourceFile()
640 CI.getFrontendOpts().ModuleMapFiles.push_back( in BeginSourceFile()
672 IntrusiveRefCntPtr<DiagnosticsEngine> Diags(&CI.getDiagnostics()); in BeginSourceFile()
678 std::string(InputFile), CI.getPCHContainerReader(), in BeginSourceFile()
679 ASTUnit::LoadEverything, Diags, CI.getFileSystemOpts(), in BeginSourceFile()
680 CI.getCodeGenOpts().DebugTypeExtRefs); in BeginSourceFile()
686 CI.getDiagnosticClient().BeginSourceFile(CI.getLangOpts(), nullptr); in BeginSourceFile()
691 CI.setFileManager(&AST->getFileManager()); in BeginSourceFile()
692 CI.setSourceManager(&AST->getSourceManager()); in BeginSourceFile()
693 CI.setPreprocessor(AST->getPreprocessorPtr()); in BeginSourceFile()
694 Preprocessor &PP = CI.getPreprocessor(); in BeginSourceFile()
697 CI.setASTContext(&AST->getASTContext()); in BeginSourceFile()
702 if (!BeginSourceFileAction(CI)) in BeginSourceFile()
706 CI.setASTConsumer(CreateWrappedASTConsumer(CI, InputFile)); in BeginSourceFile()
707 if (!CI.hasASTConsumer()) in BeginSourceFile()
715 if (!CI.hasFileManager()) { in BeginSourceFile()
716 if (!CI.createFileManager()) { in BeginSourceFile()
720 if (!CI.hasSourceManager()) in BeginSourceFile()
721 CI.createSourceManager(CI.getFileManager()); in BeginSourceFile()
725 for (const auto &F : CI.getFrontendOpts().ModulesEmbedFiles) { in BeginSourceFile()
726 if (auto FE = CI.getFileManager().getFile(F, /*openFile*/true)) in BeginSourceFile()
727 CI.getSourceManager().setFileIsTransient(*FE); in BeginSourceFile()
729 CI.getDiagnostics().Report(diag::err_modules_embed_file_not_found) << F; in BeginSourceFile()
731 if (CI.getFrontendOpts().ModulesEmbedAllFiles) in BeginSourceFile()
732 CI.getSourceManager().setAllFilesAreTransient(true); in BeginSourceFile()
740 CI.getDiagnosticClient().BeginSourceFile(CI.getLangOpts(), nullptr); in BeginSourceFile()
744 if (!BeginSourceFileAction(CI)) in BeginSourceFile()
748 if (!CI.InitializeSourceManager(CurrentInput)) in BeginSourceFile()
757 if (!CI.getPreprocessorOpts().ImplicitPCHInclude.empty()) { in BeginSourceFile()
758 FileManager &FileMgr = CI.getFileManager(); in BeginSourceFile()
759 PreprocessorOptions &PPOpts = CI.getPreprocessorOpts(); in BeginSourceFile()
761 std::string SpecificModuleCachePath = CI.getSpecificModuleCachePath(); in BeginSourceFile()
773 Dir->path(), FileMgr, CI.getPCHContainerReader(), in BeginSourceFile()
774 CI.getLangOpts(), CI.getTargetOpts(), CI.getPreprocessorOpts(), in BeginSourceFile()
783 CI.getDiagnostics().Report(diag::err_fe_no_pch_in_dir) << PCHInclude; in BeginSourceFile()
792 CI.createPreprocessor(getTranslationUnitKind()); in BeginSourceFile()
795 CI.getDiagnosticClient().BeginSourceFile(CI.getLangOpts(), in BeginSourceFile()
796 &CI.getPreprocessor()); in BeginSourceFile()
803 if (CI.getLangOpts().CPlusPlusModules && Input.getKind().isHeaderUnit() && in BeginSourceFile()
808 assert(CI.hasPreprocessor() && in BeginSourceFile()
810 HeaderSearch &HS = CI.getPreprocessor().getHeaderSearchInfo(); in BeginSourceFile()
813 if (auto DirOrErr = CI.getFileManager().getDirectory(".")) in BeginSourceFile()
824 CI.getDiagnostics().Report(diag::err_module_header_file_not_found) in BeginSourceFile()
836 if (CI.getLangOpts().ModuleName.empty()) in BeginSourceFile()
837 CI.getLangOpts().ModuleName = std::string(FileName); in BeginSourceFile()
838 CI.getLangOpts().CurrentModule = CI.getLangOpts().ModuleName; in BeginSourceFile()
841 if (!CI.InitializeSourceManager(Input)) in BeginSourceFile()
844 if (CI.getLangOpts().CPlusPlusModules && Input.getKind().isHeaderUnit() && in BeginSourceFile()
851 ReadOriginalFileName(CI, PresumedInputFile); in BeginSourceFile()
854 if (CI.getLangOpts().ModuleName.empty()) in BeginSourceFile()
855 CI.getLangOpts().ModuleName = std::string(PresumedInputFile); in BeginSourceFile()
856 CI.getLangOpts().CurrentModule = CI.getLangOpts().ModuleName; in BeginSourceFile()
862 CI.getLangOpts().setCompilingModule(LangOptions::CMK_ModuleMap); in BeginSourceFile()
866 if (loadModuleMapForModuleBuild(CI, Input.isSystem(), in BeginSourceFile()
871 auto *CurrentModule = prepareToBuildModule(CI, Input.getFile()); in BeginSourceFile()
879 CI.getPreprocessor().setSkipMainFilePreamble(OffsetToContents, true); in BeginSourceFile()
882 auto Buffer = getInputBufferForModule(CI, CurrentModule); in BeginSourceFile()
888 auto &SourceMgr = CI.getSourceManager(); in BeginSourceFile()
896 if (!BeginSourceFileAction(CI)) in BeginSourceFile()
900 for (const auto &Filename : CI.getFrontendOpts().ModuleMapFiles) { in BeginSourceFile()
901 if (auto File = CI.getFileManager().getFile(Filename)) in BeginSourceFile()
902 CI.getPreprocessor().getHeaderSearchInfo().loadModuleMapFile( in BeginSourceFile()
905 CI.getDiagnostics().Report(diag::err_module_map_not_found) << Filename; in BeginSourceFile()
910 CI.getPreprocessor() in BeginSourceFile()
920 CI.createASTContext(); in BeginSourceFile()
926 ReadOriginalFileName(CI, PresumedInputFile); in BeginSourceFile()
929 CreateWrappedASTConsumer(CI, PresumedInputFile); in BeginSourceFile()
935 CI.getASTContext().setASTMutationListener(Consumer->GetASTMutationListener()); in BeginSourceFile()
937 if (!CI.getPreprocessorOpts().ChainedIncludes.empty()) { in BeginSourceFile()
940 source = createChainedIncludesSource(CI, FinalReader); in BeginSourceFile()
943 CI.setASTReader(static_cast<ASTReader *>(FinalReader.get())); in BeginSourceFile()
944 CI.getASTContext().setExternalSource(source); in BeginSourceFile()
945 } else if (CI.getLangOpts().Modules || in BeginSourceFile()
946 !CI.getPreprocessorOpts().ImplicitPCHInclude.empty()) { in BeginSourceFile()
952 if (CI.getPreprocessorOpts().DumpDeserializedPCHDecls) { in BeginSourceFile()
957 if (!CI.getPreprocessorOpts().DeserializedPCHDeclsToErrorOn.empty()) { in BeginSourceFile()
959 CI.getASTContext(), in BeginSourceFile()
960 CI.getPreprocessorOpts().DeserializedPCHDeclsToErrorOn, in BeginSourceFile()
964 if (!CI.getPreprocessorOpts().ImplicitPCHInclude.empty()) { in BeginSourceFile()
965 CI.createPCHExternalASTSource( in BeginSourceFile()
966 CI.getPreprocessorOpts().ImplicitPCHInclude, in BeginSourceFile()
967 CI.getPreprocessorOpts().DisablePCHOrModuleValidation, in BeginSourceFile()
968 CI.getPreprocessorOpts().AllowPCHWithCompilerErrors, in BeginSourceFile()
970 if (!CI.getASTContext().getExternalSource()) in BeginSourceFile()
976 if (CI.getLangOpts().Modules || !CI.hasASTContext() || in BeginSourceFile()
977 !CI.getASTContext().getExternalSource()) { in BeginSourceFile()
978 CI.createASTReader(); in BeginSourceFile()
979 CI.getASTReader()->setDeserializationListener(DeserialListener, in BeginSourceFile()
984 CI.setASTConsumer(std::move(Consumer)); in BeginSourceFile()
985 if (!CI.hasASTConsumer()) in BeginSourceFile()
991 if (CI.getLangOpts().Modules || !CI.hasASTContext() || in BeginSourceFile()
992 !CI.getASTContext().getExternalSource()) { in BeginSourceFile()
993 Preprocessor &PP = CI.getPreprocessor(); in BeginSourceFile()
999 assert((!CI.getLangOpts().Modules || CI.getASTReader()) && in BeginSourceFile()
1005 for (const auto &ModuleFile : CI.getFrontendOpts().ModuleFiles) in BeginSourceFile()
1006 if (!CI.loadModuleFile(ModuleFile)) in BeginSourceFile()
1011 if (!CI.getFrontendOpts().OverrideRecordLayoutsFile.empty() && in BeginSourceFile()
1012 CI.hasASTContext() && !CI.getASTContext().getExternalSource()) { in BeginSourceFile()
1015 CI.getFrontendOpts().OverrideRecordLayoutsFile)); in BeginSourceFile()
1016 CI.getASTContext().setExternalSource(Override); in BeginSourceFile()
1020 if (CI.getLangOpts().HLSL && CI.hasASTContext()) { in BeginSourceFile()
1023 CI.getASTContext().setExternalSource(HLSLSema); in BeginSourceFile()
1031 CompilerInstance &CI = getCompilerInstance(); in Execute() local
1033 if (CI.hasFrontendTimer()) { in Execute()
1034 llvm::TimeRegion Timer(CI.getFrontendTimer()); in Execute()
1041 if (CI.shouldBuildGlobalModuleIndex() && CI.hasFileManager() && in Execute()
1042 CI.hasPreprocessor()) { in Execute()
1044 CI.getPreprocessor().getHeaderSearchInfo().getModuleCachePath(); in Execute()
1047 CI.getFileManager(), CI.getPCHContainerReader(), Cache)) { in Execute()
1060 CompilerInstance &CI = getCompilerInstance(); in EndSourceFile() local
1063 CI.getDiagnosticClient().EndSourceFile(); in EndSourceFile()
1066 if (CI.hasPreprocessor()) in EndSourceFile()
1067 CI.getPreprocessor().EndSourceFile(); in EndSourceFile()
1075 bool DisableFree = CI.getFrontendOpts().DisableFree; in EndSourceFile()
1077 CI.resetAndLeakSema(); in EndSourceFile()
1078 CI.resetAndLeakASTContext(); in EndSourceFile()
1079 llvm::BuryPointer(CI.takeASTConsumer().get()); in EndSourceFile()
1081 CI.setSema(nullptr); in EndSourceFile()
1082 CI.setASTContext(nullptr); in EndSourceFile()
1083 CI.setASTConsumer(nullptr); in EndSourceFile()
1086 if (CI.getFrontendOpts().ShowStats) { in EndSourceFile()
1088 CI.getPreprocessor().PrintStats(); in EndSourceFile()
1089 CI.getPreprocessor().getIdentifierTable().PrintStats(); in EndSourceFile()
1090 CI.getPreprocessor().getHeaderSearchInfo().PrintStats(); in EndSourceFile()
1091 CI.getSourceManager().PrintStats(); in EndSourceFile()
1097 CI.clearOutputFiles(/*EraseFiles=*/shouldEraseOutputFiles()); in EndSourceFile()
1101 CI.resetAndLeakPreprocessor(); in EndSourceFile()
1102 CI.resetAndLeakSourceManager(); in EndSourceFile()
1103 CI.resetAndLeakFileManager(); in EndSourceFile()
1106 CI.setPreprocessor(nullptr); in EndSourceFile()
1107 CI.setSourceManager(nullptr); in EndSourceFile()
1108 CI.setFileManager(nullptr); in EndSourceFile()
1114 CI.getLangOpts().setCompilingModule(LangOptions::CMK_None); in EndSourceFile()
1126 CompilerInstance &CI = getCompilerInstance(); in ExecuteAction() local
1127 if (!CI.hasPreprocessor()) in ExecuteAction()
1133 !CI.getFrontendOpts().CodeCompletionAt.FileName.empty()) in ExecuteAction()
1134 CI.createCodeCompletionConsumer(); in ExecuteAction()
1138 if (CI.hasCodeCompletionConsumer()) in ExecuteAction()
1139 CompletionConsumer = &CI.getCodeCompletionConsumer(); in ExecuteAction()
1141 if (!CI.hasSema()) in ExecuteAction()
1142 CI.createSema(getTranslationUnitKind(), CompletionConsumer); in ExecuteAction()
1144 ParseAST(CI.getSema(), CI.getFrontendOpts().ShowStats, in ExecuteAction()
1145 CI.getFrontendOpts().SkipFunctionBodies); in ExecuteAction()
1151 PreprocessorFrontendAction::CreateASTConsumer(CompilerInstance &CI, in CreateASTConsumer() argument
1156 bool WrapperFrontendAction::PrepareToExecuteAction(CompilerInstance &CI) { in PrepareToExecuteAction() argument
1157 return WrappedAction->PrepareToExecuteAction(CI); in PrepareToExecuteAction()
1160 WrapperFrontendAction::CreateASTConsumer(CompilerInstance &CI, in CreateASTConsumer() argument
1162 return WrappedAction->CreateASTConsumer(CI, InFile); in CreateASTConsumer()
1164 bool WrapperFrontendAction::BeginInvocation(CompilerInstance &CI) { in BeginInvocation() argument
1165 return WrappedAction->BeginInvocation(CI); in BeginInvocation()
1167 bool WrapperFrontendAction::BeginSourceFileAction(CompilerInstance &CI) { in BeginSourceFileAction() argument
1169 WrappedAction->setCompilerInstance(&CI); in BeginSourceFileAction()
1170 auto Ret = WrappedAction->BeginSourceFileAction(CI); in BeginSourceFileAction()