15 #ifndef LLVM_BITCODE_BITCODEWRITERPASS_H
16 #define LLVM_BITCODE_BITCODEWRITERPASS_H
39 bool ShouldPreserveUseListOrder =
false,
40 bool EmitSummaryIndex =
false,
41 bool EmitModuleHash =
false);
49 bool ShouldPreserveUseListOrder;
50 bool EmitSummaryIndex;
62 bool ShouldPreserveUseListOrder =
false,
63 bool EmitSummaryIndex =
false,
64 bool EmitModuleHash =
false)
65 : OS(OS), ShouldPreserveUseListOrder(ShouldPreserveUseListOrder),
66 EmitSummaryIndex(EmitSummaryIndex), EmitModuleHash(EmitModuleHash) {}
A Module instance is used to store all the information related to an LLVM module. ...
A CRTP mix-in to automatically provide informational APIs needed for passes.
A set of analyses that are preserved following a run of a transformation pass.
Pass for writing a module of IR out to a bitcode file.
ModulePass * createBitcodeWriterPass(raw_ostream &Str, bool ShouldPreserveUseListOrder=false, bool EmitSummaryIndex=false, bool EmitModuleHash=false)
Create and return a pass that writes the module to the specified ostream.
PreservedAnalyses run(Module &M, ModuleAnalysisManager &)
Run the bitcode writer pass, and output the module to the selected output stream. ...
BitcodeWriterPass(raw_ostream &OS, bool ShouldPreserveUseListOrder=false, bool EmitSummaryIndex=false, bool EmitModuleHash=false)
Construct a bitcode writer pass around a particular output stream.
This class implements an extremely fast bulk output stream that can only output to a stream...
A container for analyses that lazily runs them and caches their results.
This header defines various interfaces for pass management in LLVM.