Lines Matching full: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()
247 /// \param CI The compiler instance.
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()
540 FileID OriginalModuleMapFID = CI.getSourceManager().getOrCreateFileID( in prepareToBuildModule()
542 CI.getPreprocessor() in prepareToBuildModule()
552 SourceManager &SourceMgr = CI.getSourceManager(); in prepareToBuildModule()
554 SourceMgr.pushModuleBuildStack(CI.getLangOpts().CurrentModule, in prepareToBuildModule()
561 getInputBufferForModule(CompilerInstance &CI, Module *M) { in getInputBufferForModule() argument
562 FileManager &FileMgr = CI.getFileManager(); in getInputBufferForModule()
570 HeaderContents, CI.getLangOpts(), M->IsExternC); in getInputBufferForModule()
572 CI.getLangOpts(), FileMgr, CI.getDiagnostics(), in getInputBufferForModule()
573 CI.getPreprocessor().getHeaderSearchInfo().getModuleMap(), M, in getInputBufferForModule()
577 CI.getDiagnostics().Report(diag::err_module_cannot_create_includes) in getInputBufferForModule()
586 bool FrontendAction::BeginSourceFile(CompilerInstance &CI, in BeginSourceFile() argument
592 setCompilerInstance(&CI); in BeginSourceFile()
602 CI.getDiagnosticClient().EndSourceFile(); in BeginSourceFile()
603 CI.setASTConsumer(nullptr); in BeginSourceFile()
604 CI.clearOutputFiles(/*EraseFiles=*/true); in BeginSourceFile()
605 CI.getLangOpts().setCompilingModule(LangOptions::CMK_None); in BeginSourceFile()
610 if (!BeginInvocation(CI)) in BeginSourceFile()
616 IntrusiveRefCntPtr<DiagnosticsEngine> Diags(&CI.getDiagnostics()); in BeginSourceFile()
628 std::string(InputFile), CI.getPCHContainerReader(), in BeginSourceFile()
629 ASTUnit::LoadPreprocessorOnly, ASTDiags, CI.getFileSystemOpts(), in BeginSourceFile()
636 CI.getHeaderSearchOpts() = AST->getHeaderSearchOpts(); in BeginSourceFile()
637 CI.getPreprocessorOpts() = AST->getPreprocessorOpts(); in BeginSourceFile()
638 CI.getLangOpts() = AST->getLangOpts(); in BeginSourceFile()
642 CI.setFileManager(&AST->getFileManager()); in BeginSourceFile()
643 CI.createSourceManager(CI.getFileManager()); in BeginSourceFile()
644 CI.getSourceManager().initializeForReplay(AST->getSourceManager()); in BeginSourceFile()
655 CI.getFrontendOpts().ModuleFiles.push_back(MF.FileName); in BeginSourceFile()
658 CI.getFrontendOpts().ModuleMapFiles.push_back( in BeginSourceFile()
690 IntrusiveRefCntPtr<DiagnosticsEngine> Diags(&CI.getDiagnostics()); in BeginSourceFile()
696 std::string(InputFile), CI.getPCHContainerReader(), in BeginSourceFile()
697 ASTUnit::LoadEverything, Diags, CI.getFileSystemOpts(), in BeginSourceFile()
698 CI.getHeaderSearchOptsPtr(), CI.getLangOptsPtr()); in BeginSourceFile()
704 CI.getDiagnosticClient().BeginSourceFile(CI.getLangOpts(), nullptr); in BeginSourceFile()
709 CI.setFileManager(&AST->getFileManager()); in BeginSourceFile()
710 CI.setSourceManager(&AST->getSourceManager()); in BeginSourceFile()
711 CI.setPreprocessor(AST->getPreprocessorPtr()); in BeginSourceFile()
712 Preprocessor &PP = CI.getPreprocessor(); in BeginSourceFile()
715 CI.setASTContext(&AST->getASTContext()); in BeginSourceFile()
720 if (!BeginSourceFileAction(CI)) in BeginSourceFile()
724 CI.setASTConsumer(CreateWrappedASTConsumer(CI, InputFile)); in BeginSourceFile()
725 if (!CI.hasASTConsumer()) in BeginSourceFile()
733 if (!CI.hasFileManager()) { in BeginSourceFile()
734 if (!CI.createFileManager()) { in BeginSourceFile()
738 if (!CI.hasSourceManager()) { in BeginSourceFile()
739 CI.createSourceManager(CI.getFileManager()); in BeginSourceFile()
740 if (CI.getDiagnosticOpts().getFormat() == DiagnosticOptions::SARIF) { in BeginSourceFile()
741 static_cast<SARIFDiagnosticPrinter *>(&CI.getDiagnosticClient()) in BeginSourceFile()
743 std::make_unique<SarifDocumentWriter>(CI.getSourceManager())); in BeginSourceFile()
749 for (const auto &F : CI.getFrontendOpts().ModulesEmbedFiles) { in BeginSourceFile()
750 if (auto FE = CI.getFileManager().getOptionalFileRef(F, /*openFile*/true)) in BeginSourceFile()
751 CI.getSourceManager().setFileIsTransient(*FE); in BeginSourceFile()
753 CI.getDiagnostics().Report(diag::err_modules_embed_file_not_found) << F; in BeginSourceFile()
755 if (CI.getFrontendOpts().ModulesEmbedAllFiles) in BeginSourceFile()
756 CI.getSourceManager().setAllFilesAreTransient(true); in BeginSourceFile()
761 CI.getDiagnostics().Report(diag::err_ast_action_on_llvm_ir) in BeginSourceFile()
767 CI.getDiagnosticClient().BeginSourceFile(CI.getLangOpts(), nullptr); in BeginSourceFile()
771 if (!BeginSourceFileAction(CI)) in BeginSourceFile()
775 if (!CI.InitializeSourceManager(CurrentInput)) in BeginSourceFile()
784 if (!CI.getPreprocessorOpts().ImplicitPCHInclude.empty()) { in BeginSourceFile()
785 FileManager &FileMgr = CI.getFileManager(); in BeginSourceFile()
786 PreprocessorOptions &PPOpts = CI.getPreprocessorOpts(); in BeginSourceFile()
788 std::string SpecificModuleCachePath = CI.getSpecificModuleCachePath(); in BeginSourceFile()
800 Dir->path(), FileMgr, CI.getModuleCache(), in BeginSourceFile()
801 CI.getPCHContainerReader(), CI.getLangOpts(), in BeginSourceFile()
802 CI.getTargetOpts(), CI.getPreprocessorOpts(), in BeginSourceFile()
811 CI.getDiagnostics().Report(diag::err_fe_no_pch_in_dir) << PCHInclude; in BeginSourceFile()
820 CI.createPreprocessor(getTranslationUnitKind()); in BeginSourceFile()
823 CI.getDiagnosticClient().BeginSourceFile(CI.getLangOpts(), in BeginSourceFile()
824 &CI.getPreprocessor()); in BeginSourceFile()
831 if (CI.getLangOpts().CPlusPlusModules && Input.getKind().isHeaderUnit() && in BeginSourceFile()
836 assert(CI.hasPreprocessor() && in BeginSourceFile()
838 HeaderSearch &HS = CI.getPreprocessor().getHeaderSearchInfo(); in BeginSourceFile()
840 auto Dir = CI.getFileManager().getOptionalDirectoryRef("."); in BeginSourceFile()
850 CI.getDiagnostics().Report(diag::err_module_header_file_not_found) in BeginSourceFile()
862 if (CI.getLangOpts().ModuleName.empty()) in BeginSourceFile()
863 CI.getLangOpts().ModuleName = std::string(FileName); in BeginSourceFile()
864 CI.getLangOpts().CurrentModule = CI.getLangOpts().ModuleName; in BeginSourceFile()
867 if (!CI.InitializeSourceManager(Input)) in BeginSourceFile()
870 if (CI.getLangOpts().CPlusPlusModules && Input.getKind().isHeaderUnit() && in BeginSourceFile()
877 ReadOriginalFileName(CI, PresumedInputFile); in BeginSourceFile()
880 if (CI.getLangOpts().ModuleName.empty()) in BeginSourceFile()
881 CI.getLangOpts().ModuleName = std::string(PresumedInputFile); in BeginSourceFile()
882 CI.getLangOpts().CurrentModule = CI.getLangOpts().ModuleName; in BeginSourceFile()
888 CI.getLangOpts().setCompilingModule(LangOptions::CMK_ModuleMap); in BeginSourceFile()
892 if (loadModuleMapForModuleBuild(CI, Input.isSystem(), in BeginSourceFile()
897 auto *CurrentModule = prepareToBuildModule(CI, Input.getFile()); in BeginSourceFile()
905 CI.getPreprocessor().setSkipMainFilePreamble(OffsetToContents, true); in BeginSourceFile()
908 auto Buffer = getInputBufferForModule(CI, CurrentModule); in BeginSourceFile()
914 auto &SourceMgr = CI.getSourceManager(); in BeginSourceFile()
922 if (!BeginSourceFileAction(CI)) in BeginSourceFile()
926 for (const auto &Filename : CI.getFrontendOpts().ModuleMapFiles) { in BeginSourceFile()
927 if (auto File = CI.getFileManager().getOptionalFileRef(Filename)) in BeginSourceFile()
928 CI.getPreprocessor().getHeaderSearchInfo().loadModuleMapFile( in BeginSourceFile()
931 CI.getDiagnostics().Report(diag::err_module_map_not_found) << Filename; in BeginSourceFile()
935 (void)CI.getPreprocessor().getCurrentModuleImplementation(); in BeginSourceFile()
939 CI.getPreprocessor() in BeginSourceFile()
949 CI.createASTContext(); in BeginSourceFile()
955 ReadOriginalFileName(CI, PresumedInputFile); in BeginSourceFile()
958 CreateWrappedASTConsumer(CI, PresumedInputFile); in BeginSourceFile()
964 CI.getASTContext().setASTMutationListener(Consumer->GetASTMutationListener()); in BeginSourceFile()
966 if (!CI.getPreprocessorOpts().ChainedIncludes.empty()) { in BeginSourceFile()
969 source = createChainedIncludesSource(CI, FinalReader); in BeginSourceFile()
972 CI.setASTReader(static_cast<ASTReader *>(FinalReader.get())); in BeginSourceFile()
973 CI.getASTContext().setExternalSource(source); in BeginSourceFile()
974 } else if (CI.getLangOpts().Modules || in BeginSourceFile()
975 !CI.getPreprocessorOpts().ImplicitPCHInclude.empty()) { in BeginSourceFile()
981 if (CI.getPreprocessorOpts().DumpDeserializedPCHDecls) { in BeginSourceFile()
986 if (!CI.getPreprocessorOpts().DeserializedPCHDeclsToErrorOn.empty()) { in BeginSourceFile()
988 CI.getASTContext(), in BeginSourceFile()
989 CI.getPreprocessorOpts().DeserializedPCHDeclsToErrorOn, in BeginSourceFile()
993 if (!CI.getPreprocessorOpts().ImplicitPCHInclude.empty()) { in BeginSourceFile()
994 CI.createPCHExternalASTSource( in BeginSourceFile()
995 CI.getPreprocessorOpts().ImplicitPCHInclude, in BeginSourceFile()
996 CI.getPreprocessorOpts().DisablePCHOrModuleValidation, in BeginSourceFile()
997 CI.getPreprocessorOpts().AllowPCHWithCompilerErrors, in BeginSourceFile()
999 if (!CI.getASTContext().getExternalSource()) in BeginSourceFile()
1005 if (CI.getLangOpts().Modules || !CI.hasASTContext() || in BeginSourceFile()
1006 !CI.getASTContext().getExternalSource()) { in BeginSourceFile()
1007 CI.createASTReader(); in BeginSourceFile()
1008 CI.getASTReader()->setDeserializationListener(DeserialListener, in BeginSourceFile()
1013 CI.setASTConsumer(std::move(Consumer)); in BeginSourceFile()
1014 if (!CI.hasASTConsumer()) in BeginSourceFile()
1020 if (CI.getLangOpts().Modules || !CI.hasASTContext() || in BeginSourceFile()
1021 !CI.getASTContext().getExternalSource()) { in BeginSourceFile()
1022 Preprocessor &PP = CI.getPreprocessor(); in BeginSourceFile()
1028 assert((!CI.getLangOpts().Modules || CI.getASTReader()) && in BeginSourceFile()
1034 for (const auto &ModuleFile : CI.getFrontendOpts().ModuleFiles) { in BeginSourceFile()
1036 if (!CI.loadModuleFile(ModuleFile, Loaded)) in BeginSourceFile()
1040 CI.getDiagnostics().Report( in BeginSourceFile()
1046 if (!CI.getFrontendOpts().OverrideRecordLayoutsFile.empty() && in BeginSourceFile()
1047 CI.hasASTContext() && !CI.getASTContext().getExternalSource()) { in BeginSourceFile()
1050 CI.getFrontendOpts().OverrideRecordLayoutsFile)); in BeginSourceFile()
1051 CI.getASTContext().setExternalSource(Override); in BeginSourceFile()
1055 if (CI.getLangOpts().HLSL && CI.hasASTContext()) { in BeginSourceFile()
1059 CI.getASTContext().getExternalSource())) { in BeginSourceFile()
1062 CI.getASTContext().setExternalSource(MultiSema); in BeginSourceFile()
1064 CI.getASTContext().setExternalSource(HLSLSema); in BeginSourceFile()
1072 CompilerInstance &CI = getCompilerInstance(); in Execute() local
1074 if (CI.hasFrontendTimer()) { in Execute()
1075 llvm::TimeRegion Timer(CI.getFrontendTimer()); in Execute()
1082 if (CI.shouldBuildGlobalModuleIndex() && CI.hasFileManager() && in Execute()
1083 CI.hasPreprocessor()) { in Execute()
1085 CI.getPreprocessor().getHeaderSearchInfo().getModuleCachePath(); in Execute()
1088 CI.getFileManager(), CI.getPCHContainerReader(), Cache)) { in Execute()
1101 CompilerInstance &CI = getCompilerInstance(); in EndSourceFile() local
1104 CI.getDiagnosticClient().EndSourceFile(); in EndSourceFile()
1107 if (CI.hasPreprocessor()) in EndSourceFile()
1108 CI.getPreprocessor().EndSourceFile(); in EndSourceFile()
1116 bool DisableFree = CI.getFrontendOpts().DisableFree; in EndSourceFile()
1118 CI.resetAndLeakSema(); in EndSourceFile()
1119 CI.resetAndLeakASTContext(); in EndSourceFile()
1120 llvm::BuryPointer(CI.takeASTConsumer().get()); in EndSourceFile()
1122 CI.setSema(nullptr); in EndSourceFile()
1123 CI.setASTContext(nullptr); in EndSourceFile()
1124 CI.setASTConsumer(nullptr); in EndSourceFile()
1127 if (CI.getFrontendOpts().ShowStats) { in EndSourceFile()
1129 CI.getPreprocessor().PrintStats(); in EndSourceFile()
1130 CI.getPreprocessor().getIdentifierTable().PrintStats(); in EndSourceFile()
1131 CI.getPreprocessor().getHeaderSearchInfo().PrintStats(); in EndSourceFile()
1132 CI.getSourceManager().PrintStats(); in EndSourceFile()
1138 CI.clearOutputFiles(/*EraseFiles=*/shouldEraseOutputFiles()); in EndSourceFile()
1145 CI.resetAndLeakPreprocessor(); in EndSourceFile()
1146 CI.resetAndLeakSourceManager(); in EndSourceFile()
1147 CI.resetAndLeakFileManager(); in EndSourceFile()
1150 CI.setPreprocessor(nullptr); in EndSourceFile()
1151 CI.setSourceManager(nullptr); in EndSourceFile()
1152 CI.setFileManager(nullptr); in EndSourceFile()
1158 CI.getLangOpts().setCompilingModule(LangOptions::CMK_None); in EndSourceFile()
1170 CompilerInstance &CI = getCompilerInstance(); in ExecuteAction() local
1171 if (!CI.hasPreprocessor()) in ExecuteAction()
1181 !CI.getFrontendOpts().CodeCompletionAt.FileName.empty()) in ExecuteAction()
1182 CI.createCodeCompletionConsumer(); in ExecuteAction()
1186 if (CI.hasCodeCompletionConsumer()) in ExecuteAction()
1187 CompletionConsumer = &CI.getCodeCompletionConsumer(); in ExecuteAction()
1189 if (!CI.hasSema()) in ExecuteAction()
1190 CI.createSema(getTranslationUnitKind(), CompletionConsumer); in ExecuteAction()
1192 ParseAST(CI.getSema(), CI.getFrontendOpts().ShowStats, in ExecuteAction()
1193 CI.getFrontendOpts().SkipFunctionBodies); in ExecuteAction()
1199 PreprocessorFrontendAction::CreateASTConsumer(CompilerInstance &CI, in CreateASTConsumer() argument
1204 bool WrapperFrontendAction::PrepareToExecuteAction(CompilerInstance &CI) { in PrepareToExecuteAction() argument
1205 return WrappedAction->PrepareToExecuteAction(CI); in PrepareToExecuteAction()
1208 WrapperFrontendAction::CreateASTConsumer(CompilerInstance &CI, in CreateASTConsumer() argument
1210 return WrappedAction->CreateASTConsumer(CI, InFile); in CreateASTConsumer()
1212 bool WrapperFrontendAction::BeginInvocation(CompilerInstance &CI) { in BeginInvocation() argument
1213 return WrappedAction->BeginInvocation(CI); in BeginInvocation()
1215 bool WrapperFrontendAction::BeginSourceFileAction(CompilerInstance &CI) { in BeginSourceFileAction() argument
1217 WrappedAction->setCompilerInstance(&CI); in BeginSourceFileAction()
1218 auto Ret = WrappedAction->BeginSourceFileAction(CI); in BeginSourceFileAction()