Lines Matching +full:module +full:- +full:instance
1 //===--- FrontendActions.cpp ----------------------------------------------===//
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
7 //===----------------------------------------------------------------------===//
36 //===----------------------------------------------------------------------===//
38 //===----------------------------------------------------------------------===//
72 this->FixWhatYouCan = FixWhatYouCan; in FixItActionSuffixInserter()
76 fd = -1; in RewriteFilename()
103 FixItOpts->FixWhatYouCan = FEOpts.FixWhatYouCan; in BeginSourceFileAction()
112 Rewriter->WriteFixedFiles(); in EndSourceFileAction()
122 if (FixAction->BeginSourceFile(CI, FEOpts.Inputs[0])) { in BeginInvocation()
128 FixItOpts->Silent = true; in BeginInvocation()
129 FixItOpts->FixWhatYouCan = FEOpts.FixWhatYouCan; in BeginInvocation()
130 FixItOpts->FixOnlyWarnings = FEOpts.FixOnlyWarnings; in BeginInvocation()
133 if (llvm::Error Err = FixAction->Execute()) { in BeginInvocation()
141 FixAction->EndSourceFile(); in BeginInvocation()
182 //===----------------------------------------------------------------------===//
184 //===----------------------------------------------------------------------===//
217 assert(File && "missing file for loaded module?"); in visitModuleFile()
219 // Only rewrite each module file once. in visitModuleFile()
224 CI.getASTReader()->getModuleManager().lookup(*File); in visitModuleFile()
225 assert(MF && "missing module file for loaded module?"); in visitModuleFile()
228 if (!MF->isModule()) in visitModuleFile()
232 assert(OS && "loaded module file after finishing rewrite action?"); in visitModuleFile()
234 (*OS) << "#pragma clang module build "; in visitModuleFile()
235 if (isValidAsciiIdentifier(MF->ModuleName)) in visitModuleFile()
236 (*OS) << MF->ModuleName; in visitModuleFile()
239 OS->write_escaped(MF->ModuleName); in visitModuleFile()
244 // Rewrite the contents of the module in a separate compiler instance. in visitModuleFile()
245 CompilerInstance Instance(CI.getPCHContainerOperations(), in visitModuleFile() local
247 Instance.setInvocation( in visitModuleFile()
249 Instance.createDiagnostics( in visitModuleFile()
252 Instance.getFrontendOpts().DisableFree = false; in visitModuleFile()
253 Instance.getFrontendOpts().Inputs.clear(); in visitModuleFile()
254 Instance.getFrontendOpts().Inputs.emplace_back( in visitModuleFile()
256 Instance.getFrontendOpts().ModuleFiles.clear(); in visitModuleFile()
257 Instance.getFrontendOpts().ModuleMapFiles.clear(); in visitModuleFile()
259 Instance.getPreprocessorOutputOpts().RewriteImports = false; in visitModuleFile()
264 Instance.ExecuteAction(Action); in visitModuleFile()
267 (*OS) << "#pragma clang module endbuild /*" << MF->ModuleName << "*/\n"; in visitModuleFile()
281 // If we're preprocessing a module map, start by dumping the contents of the in BeginSourceFileAction()
282 // module itself before switching to the input buffer. in BeginSourceFileAction()
290 getCurrentModule()->print(OS); in BeginSourceFileAction()
291 OS << "#pragma clang module contents\n"; in BeginSourceFileAction()
295 // module files. in BeginSourceFileAction()
298 CI.getASTReader()->addListener( in BeginSourceFileAction()
308 // If we're rewriting imports, emit the module build output first rather in ExecuteAction()