aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/CodeGen/ObjectFilePCHContainerWriter.cpp
diff options
context:
space:
mode:
authorFangrui Song <i@maskray.me>2025-01-09 21:23:52 -0800
committerFangrui Song <i@maskray.me>2025-01-09 21:23:52 -0800
commit48d0eb5181065a3d086de2e30f5c619fe407e4ce (patch)
treea3caac3f0eaaa07cc27ccd983334e48a009ce71e /clang/lib/CodeGen/ObjectFilePCHContainerWriter.cpp
parenta4394d9d42fb6e60e3702588fb56bec243038c49 (diff)
downloadllvm-48d0eb5181065a3d086de2e30f5c619fe407e4ce.zip
llvm-48d0eb5181065a3d086de2e30f5c619fe407e4ce.tar.gz
llvm-48d0eb5181065a3d086de2e30f5c619fe407e4ce.tar.bz2
[CodeGen] Simplify EmitAssemblyHelper and emitBackendOutput
Prepare for -ftime-report change (#122225).
Diffstat (limited to 'clang/lib/CodeGen/ObjectFilePCHContainerWriter.cpp')
-rw-r--r--clang/lib/CodeGen/ObjectFilePCHContainerWriter.cpp15
1 files changed, 7 insertions, 8 deletions
diff --git a/clang/lib/CodeGen/ObjectFilePCHContainerWriter.cpp b/clang/lib/CodeGen/ObjectFilePCHContainerWriter.cpp
index 7174548..5447b98 100644
--- a/clang/lib/CodeGen/ObjectFilePCHContainerWriter.cpp
+++ b/clang/lib/CodeGen/ObjectFilePCHContainerWriter.cpp
@@ -37,6 +37,7 @@ using namespace clang;
namespace {
class PCHContainerGenerator : public ASTConsumer {
+ CompilerInstance &CI;
DiagnosticsEngine &Diags;
const std::string MainFileName;
const std::string OutputFileName;
@@ -139,7 +140,7 @@ public:
const std::string &OutputFileName,
std::unique_ptr<raw_pwrite_stream> OS,
std::shared_ptr<PCHBuffer> Buffer)
- : Diags(CI.getDiagnostics()), MainFileName(MainFileName),
+ : CI(CI), Diags(CI.getDiagnostics()), MainFileName(MainFileName),
OutputFileName(OutputFileName), Ctx(nullptr),
MMap(CI.getPreprocessor().getHeaderSearchInfo().getModuleMap()),
FS(&CI.getVirtualFileSystem()),
@@ -317,19 +318,17 @@ public:
LLVM_DEBUG({
// Print the IR for the PCH container to the debug output.
llvm::SmallString<0> Buffer;
- clang::EmitBackendOutput(
- Diags, HeaderSearchOpts, CodeGenOpts, TargetOpts, LangOpts,
- Ctx.getTargetInfo().getDataLayoutString(), M.get(),
+ clang::emitBackendOutput(
+ CI, Ctx.getTargetInfo().getDataLayoutString(), M.get(),
BackendAction::Backend_EmitLL, FS,
std::make_unique<llvm::raw_svector_ostream>(Buffer));
llvm::dbgs() << Buffer;
});
// Use the LLVM backend to emit the pch container.
- clang::EmitBackendOutput(Diags, HeaderSearchOpts, CodeGenOpts, TargetOpts,
- LangOpts,
- Ctx.getTargetInfo().getDataLayoutString(), M.get(),
- BackendAction::Backend_EmitObj, FS, std::move(OS));
+ clang::emitBackendOutput(CI, Ctx.getTargetInfo().getDataLayoutString(),
+ M.get(), BackendAction::Backend_EmitObj, FS,
+ std::move(OS));
// Free the memory for the temporary buffer.
llvm::SmallVector<char, 0> Empty;