Lines Matching refs:CI

158   CompilerInstance &CI = getCompilerInstance();  in getCurrentModule()  local
159 return CI.getPreprocessor().getHeaderSearchInfo().lookupModule( in getCurrentModule()
160 CI.getLangOpts().CurrentModule, SourceLocation(), /*AllowSearch*/false); in getCurrentModule()
164 FrontendAction::CreateWrappedASTConsumer(CompilerInstance &CI, in CreateWrappedASTConsumer() argument
166 std::unique_ptr<ASTConsumer> Consumer = CreateASTConsumer(CI, InFile); in CreateWrappedASTConsumer()
172 for (const std::string &Arg : CI.getFrontendOpts().AddPluginActions) { in CreateWrappedASTConsumer()
180 CI.getDiagnostics().Report(diag::err_fe_invalid_plugin_name) << Arg; in CreateWrappedASTConsumer()
192 if (CI.hasCodeCompletionConsumer()) in CreateWrappedASTConsumer()
207 if (llvm::is_contained(CI.getFrontendOpts().AddPluginActions, in CreateWrappedASTConsumer()
218 CI, in CreateWrappedASTConsumer()
219 CI.getFrontendOpts().PluginArgs[std::string(Plugin.getName())])) { in CreateWrappedASTConsumer()
220 std::unique_ptr<ASTConsumer> PluginConsumer = P->CreateASTConsumer(CI, InFile); in CreateWrappedASTConsumer()
235 CI.getCodeGenOpts().ClearASTBeforeBackend = false; in CreateWrappedASTConsumer()
252 static SourceLocation ReadOriginalFileName(CompilerInstance &CI, in ReadOriginalFileName() argument
255 auto &SourceMgr = CI.getSourceManager(); in ReadOriginalFileName()
263 new Lexer(MainFileID, *MainFileBuf, SourceMgr, CI.getLangOpts())); in ReadOriginalFileName()
281 if (Lexer::getSpelling(LineNoLoc, Buffer, SourceMgr, CI.getLangOpts()) in ReadOriginalFileName()
290 StringLiteralParser Literal(T, CI.getPreprocessor()); in ReadOriginalFileName()
299 CI.getSourceManager().AddLineNote( in ReadOriginalFileName()
446 static bool loadModuleMapForModuleBuild(CompilerInstance &CI, bool IsSystem, in loadModuleMapForModuleBuild() argument
450 auto &SrcMgr = CI.getSourceManager(); in loadModuleMapForModuleBuild()
451 HeaderSearch &HS = CI.getPreprocessor().getHeaderSearchInfo(); in loadModuleMapForModuleBuild()
463 ReadOriginalFileName(CI, PresumedModuleMapFile, /*IsModuleMap*/ true); in loadModuleMapForModuleBuild()
465 Offset = CI.getSourceManager().getDecomposedLoc(EndOfLineMarker).second; in loadModuleMapForModuleBuild()
480 CI.getLangOpts().ModuleName + ".framework"); in loadModuleMapForModuleBuild()
482 CI.getFileManager().getOptionalDirectoryRef(InferredFrameworkPath)) in loadModuleMapForModuleBuild()
489 static Module *prepareToBuildModule(CompilerInstance &CI, in prepareToBuildModule() argument
491 if (CI.getLangOpts().CurrentModule.empty()) { in prepareToBuildModule()
492 CI.getDiagnostics().Report(diag::err_missing_module_name); in prepareToBuildModule()
502 HeaderSearch &HS = CI.getPreprocessor().getHeaderSearchInfo(); in prepareToBuildModule()
503 Module *M = HS.lookupModule(CI.getLangOpts().CurrentModule, SourceLocation(), in prepareToBuildModule()
506 CI.getDiagnostics().Report(diag::err_missing_module) in prepareToBuildModule()
507 << CI.getLangOpts().CurrentModule << ModuleMapFilename; in prepareToBuildModule()
513 if (Preprocessor::checkModuleIsAvailable(CI.getLangOpts(), CI.getTarget(), *M, in prepareToBuildModule()
514 CI.getDiagnostics())) in prepareToBuildModule()
519 CI.getPreprocessor().setMainFileDir(*M->Directory); in prepareToBuildModule()
525 StringRef OriginalModuleMapName = CI.getFrontendOpts().OriginalModuleMap; in prepareToBuildModule()
528 CI.getFileManager().getOptionalFileRef(OriginalModuleMapName, in prepareToBuildModule()
531 CI.getDiagnostics().Report(diag::err_module_map_not_found) in prepareToBuildModule()
535 if (*OriginalModuleMap != CI.getSourceManager().getFileEntryRefForID( in prepareToBuildModule()
536 CI.getSourceManager().getMainFileID())) { in prepareToBuildModule()
538 CI.getPreprocessor().getHeaderSearchInfo().getModuleMap() in prepareToBuildModule()
546 SourceManager &SourceMgr = CI.getSourceManager(); in prepareToBuildModule()
548 SourceMgr.pushModuleBuildStack(CI.getLangOpts().CurrentModule, in prepareToBuildModule()
555 getInputBufferForModule(CompilerInstance &CI, Module *M) { in getInputBufferForModule() argument
556 FileManager &FileMgr = CI.getFileManager(); in getInputBufferForModule()
564 HeaderContents, CI.getLangOpts(), M->IsExternC); in getInputBufferForModule()
566 CI.getLangOpts(), FileMgr, CI.getDiagnostics(), in getInputBufferForModule()
567 CI.getPreprocessor().getHeaderSearchInfo().getModuleMap(), M, in getInputBufferForModule()
571 CI.getDiagnostics().Report(diag::err_module_cannot_create_includes) in getInputBufferForModule()
580 bool FrontendAction::BeginSourceFile(CompilerInstance &CI, in BeginSourceFile() argument
586 setCompilerInstance(&CI); in BeginSourceFile()
596 CI.getDiagnosticClient().EndSourceFile(); in BeginSourceFile()
597 CI.setASTConsumer(nullptr); in BeginSourceFile()
598 CI.clearOutputFiles(/*EraseFiles=*/true); in BeginSourceFile()
599 CI.getLangOpts().setCompilingModule(LangOptions::CMK_None); in BeginSourceFile()
604 if (!BeginInvocation(CI)) in BeginSourceFile()
610 IntrusiveRefCntPtr<DiagnosticsEngine> Diags(&CI.getDiagnostics()); in BeginSourceFile()
622 std::string(InputFile), CI.getPCHContainerReader(), in BeginSourceFile()
623 ASTUnit::LoadPreprocessorOnly, ASTDiags, CI.getFileSystemOpts(), in BeginSourceFile()
630 CI.getHeaderSearchOpts() = AST->getHeaderSearchOpts(); in BeginSourceFile()
631 CI.getPreprocessorOpts() = AST->getPreprocessorOpts(); in BeginSourceFile()
632 CI.getLangOpts() = AST->getLangOpts(); in BeginSourceFile()
636 CI.setFileManager(&AST->getFileManager()); in BeginSourceFile()
637 CI.createSourceManager(CI.getFileManager()); in BeginSourceFile()
638 CI.getSourceManager().initializeForReplay(AST->getSourceManager()); in BeginSourceFile()
649 CI.getFrontendOpts().ModuleFiles.push_back(MF.FileName); in BeginSourceFile()
652 CI.getFrontendOpts().ModuleMapFiles.push_back( in BeginSourceFile()
684 IntrusiveRefCntPtr<DiagnosticsEngine> Diags(&CI.getDiagnostics()); in BeginSourceFile()
690 std::string(InputFile), CI.getPCHContainerReader(), in BeginSourceFile()
691 ASTUnit::LoadEverything, Diags, CI.getFileSystemOpts(), in BeginSourceFile()
692 CI.getHeaderSearchOptsPtr()); in BeginSourceFile()
698 CI.getDiagnosticClient().BeginSourceFile(CI.getLangOpts(), nullptr); in BeginSourceFile()
703 CI.setFileManager(&AST->getFileManager()); in BeginSourceFile()
704 CI.setSourceManager(&AST->getSourceManager()); in BeginSourceFile()
705 CI.setPreprocessor(AST->getPreprocessorPtr()); in BeginSourceFile()
706 Preprocessor &PP = CI.getPreprocessor(); in BeginSourceFile()
709 CI.setASTContext(&AST->getASTContext()); in BeginSourceFile()
714 if (!BeginSourceFileAction(CI)) in BeginSourceFile()
718 CI.setASTConsumer(CreateWrappedASTConsumer(CI, InputFile)); in BeginSourceFile()
719 if (!CI.hasASTConsumer()) in BeginSourceFile()
727 if (!CI.hasFileManager()) { in BeginSourceFile()
728 if (!CI.createFileManager()) { in BeginSourceFile()
732 if (!CI.hasSourceManager()) { in BeginSourceFile()
733 CI.createSourceManager(CI.getFileManager()); in BeginSourceFile()
734 if (CI.getDiagnosticOpts().getFormat() == DiagnosticOptions::SARIF) { in BeginSourceFile()
735 static_cast<SARIFDiagnosticPrinter *>(&CI.getDiagnosticClient()) in BeginSourceFile()
737 std::make_unique<SarifDocumentWriter>(CI.getSourceManager())); in BeginSourceFile()
743 for (const auto &F : CI.getFrontendOpts().ModulesEmbedFiles) { in BeginSourceFile()
744 if (auto FE = CI.getFileManager().getOptionalFileRef(F, /*openFile*/true)) in BeginSourceFile()
745 CI.getSourceManager().setFileIsTransient(*FE); in BeginSourceFile()
747 CI.getDiagnostics().Report(diag::err_modules_embed_file_not_found) << F; in BeginSourceFile()
749 if (CI.getFrontendOpts().ModulesEmbedAllFiles) in BeginSourceFile()
750 CI.getSourceManager().setAllFilesAreTransient(true); in BeginSourceFile()
758 CI.getDiagnosticClient().BeginSourceFile(CI.getLangOpts(), nullptr); in BeginSourceFile()
762 if (!BeginSourceFileAction(CI)) in BeginSourceFile()
766 if (!CI.InitializeSourceManager(CurrentInput)) in BeginSourceFile()
775 if (!CI.getPreprocessorOpts().ImplicitPCHInclude.empty()) { in BeginSourceFile()
776 FileManager &FileMgr = CI.getFileManager(); in BeginSourceFile()
777 PreprocessorOptions &PPOpts = CI.getPreprocessorOpts(); in BeginSourceFile()
779 std::string SpecificModuleCachePath = CI.getSpecificModuleCachePath(); in BeginSourceFile()
791 Dir->path(), FileMgr, CI.getModuleCache(), in BeginSourceFile()
792 CI.getPCHContainerReader(), CI.getLangOpts(), in BeginSourceFile()
793 CI.getTargetOpts(), CI.getPreprocessorOpts(), in BeginSourceFile()
802 CI.getDiagnostics().Report(diag::err_fe_no_pch_in_dir) << PCHInclude; in BeginSourceFile()
811 CI.createPreprocessor(getTranslationUnitKind()); in BeginSourceFile()
814 CI.getDiagnosticClient().BeginSourceFile(CI.getLangOpts(), in BeginSourceFile()
815 &CI.getPreprocessor()); in BeginSourceFile()
822 if (CI.getLangOpts().CPlusPlusModules && Input.getKind().isHeaderUnit() && in BeginSourceFile()
827 assert(CI.hasPreprocessor() && in BeginSourceFile()
829 HeaderSearch &HS = CI.getPreprocessor().getHeaderSearchInfo(); in BeginSourceFile()
831 auto Dir = CI.getFileManager().getOptionalDirectoryRef("."); in BeginSourceFile()
841 CI.getDiagnostics().Report(diag::err_module_header_file_not_found) in BeginSourceFile()
853 if (CI.getLangOpts().ModuleName.empty()) in BeginSourceFile()
854 CI.getLangOpts().ModuleName = std::string(FileName); in BeginSourceFile()
855 CI.getLangOpts().CurrentModule = CI.getLangOpts().ModuleName; in BeginSourceFile()
858 if (!CI.InitializeSourceManager(Input)) in BeginSourceFile()
861 if (CI.getLangOpts().CPlusPlusModules && Input.getKind().isHeaderUnit() && in BeginSourceFile()
868 ReadOriginalFileName(CI, PresumedInputFile); in BeginSourceFile()
871 if (CI.getLangOpts().ModuleName.empty()) in BeginSourceFile()
872 CI.getLangOpts().ModuleName = std::string(PresumedInputFile); in BeginSourceFile()
873 CI.getLangOpts().CurrentModule = CI.getLangOpts().ModuleName; in BeginSourceFile()
879 CI.getLangOpts().setCompilingModule(LangOptions::CMK_ModuleMap); in BeginSourceFile()
883 if (loadModuleMapForModuleBuild(CI, Input.isSystem(), in BeginSourceFile()
888 auto *CurrentModule = prepareToBuildModule(CI, Input.getFile()); in BeginSourceFile()
896 CI.getPreprocessor().setSkipMainFilePreamble(OffsetToContents, true); in BeginSourceFile()
899 auto Buffer = getInputBufferForModule(CI, CurrentModule); in BeginSourceFile()
905 auto &SourceMgr = CI.getSourceManager(); in BeginSourceFile()
913 if (!BeginSourceFileAction(CI)) in BeginSourceFile()
917 for (const auto &Filename : CI.getFrontendOpts().ModuleMapFiles) { in BeginSourceFile()
918 if (auto File = CI.getFileManager().getOptionalFileRef(Filename)) in BeginSourceFile()
919 CI.getPreprocessor().getHeaderSearchInfo().loadModuleMapFile( in BeginSourceFile()
922 CI.getDiagnostics().Report(diag::err_module_map_not_found) << Filename; in BeginSourceFile()
926 (void)CI.getPreprocessor().getCurrentModuleImplementation(); in BeginSourceFile()
930 CI.getPreprocessor() in BeginSourceFile()
940 CI.createASTContext(); in BeginSourceFile()
946 ReadOriginalFileName(CI, PresumedInputFile); in BeginSourceFile()
949 CreateWrappedASTConsumer(CI, PresumedInputFile); in BeginSourceFile()
955 CI.getASTContext().setASTMutationListener(Consumer->GetASTMutationListener()); in BeginSourceFile()
957 if (!CI.getPreprocessorOpts().ChainedIncludes.empty()) { in BeginSourceFile()
960 source = createChainedIncludesSource(CI, FinalReader); in BeginSourceFile()
963 CI.setASTReader(static_cast<ASTReader *>(FinalReader.get())); in BeginSourceFile()
964 CI.getASTContext().setExternalSource(source); in BeginSourceFile()
965 } else if (CI.getLangOpts().Modules || in BeginSourceFile()
966 !CI.getPreprocessorOpts().ImplicitPCHInclude.empty()) { in BeginSourceFile()
972 if (CI.getPreprocessorOpts().DumpDeserializedPCHDecls) { in BeginSourceFile()
977 if (!CI.getPreprocessorOpts().DeserializedPCHDeclsToErrorOn.empty()) { in BeginSourceFile()
979 CI.getASTContext(), in BeginSourceFile()
980 CI.getPreprocessorOpts().DeserializedPCHDeclsToErrorOn, in BeginSourceFile()
984 if (!CI.getPreprocessorOpts().ImplicitPCHInclude.empty()) { in BeginSourceFile()
985 CI.createPCHExternalASTSource( in BeginSourceFile()
986 CI.getPreprocessorOpts().ImplicitPCHInclude, in BeginSourceFile()
987 CI.getPreprocessorOpts().DisablePCHOrModuleValidation, in BeginSourceFile()
988 CI.getPreprocessorOpts().AllowPCHWithCompilerErrors, in BeginSourceFile()
990 if (!CI.getASTContext().getExternalSource()) in BeginSourceFile()
996 if (CI.getLangOpts().Modules || !CI.hasASTContext() || in BeginSourceFile()
997 !CI.getASTContext().getExternalSource()) { in BeginSourceFile()
998 CI.createASTReader(); in BeginSourceFile()
999 CI.getASTReader()->setDeserializationListener(DeserialListener, in BeginSourceFile()
1004 CI.setASTConsumer(std::move(Consumer)); in BeginSourceFile()
1005 if (!CI.hasASTConsumer()) in BeginSourceFile()
1011 if (CI.getLangOpts().Modules || !CI.hasASTContext() || in BeginSourceFile()
1012 !CI.getASTContext().getExternalSource()) { in BeginSourceFile()
1013 Preprocessor &PP = CI.getPreprocessor(); in BeginSourceFile()
1019 assert((!CI.getLangOpts().Modules || CI.getASTReader()) && in BeginSourceFile()
1025 for (const auto &ModuleFile : CI.getFrontendOpts().ModuleFiles) { in BeginSourceFile()
1027 if (!CI.loadModuleFile(ModuleFile, Loaded)) in BeginSourceFile()
1031 CI.getDiagnostics().Report( in BeginSourceFile()
1037 if (!CI.getFrontendOpts().OverrideRecordLayoutsFile.empty() && in BeginSourceFile()
1038 CI.hasASTContext() && !CI.getASTContext().getExternalSource()) { in BeginSourceFile()
1041 CI.getFrontendOpts().OverrideRecordLayoutsFile)); in BeginSourceFile()
1042 CI.getASTContext().setExternalSource(Override); in BeginSourceFile()
1046 if (CI.getLangOpts().HLSL && CI.hasASTContext()) { in BeginSourceFile()
1050 CI.getASTContext().getExternalSource())) { in BeginSourceFile()
1053 CI.getASTContext().setExternalSource(MultiSema); in BeginSourceFile()
1055 CI.getASTContext().setExternalSource(HLSLSema); in BeginSourceFile()
1063 CompilerInstance &CI = getCompilerInstance(); in Execute() local
1065 if (CI.hasFrontendTimer()) { in Execute()
1066 llvm::TimeRegion Timer(CI.getFrontendTimer()); in Execute()
1073 if (CI.shouldBuildGlobalModuleIndex() && CI.hasFileManager() && in Execute()
1074 CI.hasPreprocessor()) { in Execute()
1076 CI.getPreprocessor().getHeaderSearchInfo().getModuleCachePath(); in Execute()
1079 CI.getFileManager(), CI.getPCHContainerReader(), Cache)) { in Execute()
1092 CompilerInstance &CI = getCompilerInstance(); in EndSourceFile() local
1095 CI.getDiagnosticClient().EndSourceFile(); in EndSourceFile()
1098 if (CI.hasPreprocessor()) in EndSourceFile()
1099 CI.getPreprocessor().EndSourceFile(); in EndSourceFile()
1107 bool DisableFree = CI.getFrontendOpts().DisableFree; in EndSourceFile()
1109 CI.resetAndLeakSema(); in EndSourceFile()
1110 CI.resetAndLeakASTContext(); in EndSourceFile()
1111 llvm::BuryPointer(CI.takeASTConsumer().get()); in EndSourceFile()
1113 CI.setSema(nullptr); in EndSourceFile()
1114 CI.setASTContext(nullptr); in EndSourceFile()
1115 CI.setASTConsumer(nullptr); in EndSourceFile()
1118 if (CI.getFrontendOpts().ShowStats) { in EndSourceFile()
1120 CI.getPreprocessor().PrintStats(); in EndSourceFile()
1121 CI.getPreprocessor().getIdentifierTable().PrintStats(); in EndSourceFile()
1122 CI.getPreprocessor().getHeaderSearchInfo().PrintStats(); in EndSourceFile()
1123 CI.getSourceManager().PrintStats(); in EndSourceFile()
1129 CI.clearOutputFiles(/*EraseFiles=*/shouldEraseOutputFiles()); in EndSourceFile()
1136 CI.resetAndLeakPreprocessor(); in EndSourceFile()
1137 CI.resetAndLeakSourceManager(); in EndSourceFile()
1138 CI.resetAndLeakFileManager(); in EndSourceFile()
1141 CI.setPreprocessor(nullptr); in EndSourceFile()
1142 CI.setSourceManager(nullptr); in EndSourceFile()
1143 CI.setFileManager(nullptr); in EndSourceFile()
1149 CI.getLangOpts().setCompilingModule(LangOptions::CMK_None); in EndSourceFile()
1161 CompilerInstance &CI = getCompilerInstance(); in ExecuteAction() local
1162 if (!CI.hasPreprocessor()) in ExecuteAction()
1172 !CI.getFrontendOpts().CodeCompletionAt.FileName.empty()) in ExecuteAction()
1173 CI.createCodeCompletionConsumer(); in ExecuteAction()
1177 if (CI.hasCodeCompletionConsumer()) in ExecuteAction()
1178 CompletionConsumer = &CI.getCodeCompletionConsumer(); in ExecuteAction()
1180 if (!CI.hasSema()) in ExecuteAction()
1181 CI.createSema(getTranslationUnitKind(), CompletionConsumer); in ExecuteAction()
1183 ParseAST(CI.getSema(), CI.getFrontendOpts().ShowStats, in ExecuteAction()
1184 CI.getFrontendOpts().SkipFunctionBodies); in ExecuteAction()
1190 PreprocessorFrontendAction::CreateASTConsumer(CompilerInstance &CI, in CreateASTConsumer() argument
1195 bool WrapperFrontendAction::PrepareToExecuteAction(CompilerInstance &CI) { in PrepareToExecuteAction() argument
1196 return WrappedAction->PrepareToExecuteAction(CI); in PrepareToExecuteAction()
1199 WrapperFrontendAction::CreateASTConsumer(CompilerInstance &CI, in CreateASTConsumer() argument
1201 return WrappedAction->CreateASTConsumer(CI, InFile); in CreateASTConsumer()
1203 bool WrapperFrontendAction::BeginInvocation(CompilerInstance &CI) { in BeginInvocation() argument
1204 return WrappedAction->BeginInvocation(CI); in BeginInvocation()
1206 bool WrapperFrontendAction::BeginSourceFileAction(CompilerInstance &CI) { in BeginSourceFileAction() argument
1208 WrappedAction->setCompilerInstance(&CI); in BeginSourceFileAction()
1209 auto Ret = WrappedAction->BeginSourceFileAction(CI); in BeginSourceFileAction()