23 unsigned ParallelCodeGenParallelismLevel,
LTOKind LTOMode,
24 StringRef LinkerOutputFile,
bool SaveTemps)
25 : Base(
std::
move(Conf), Backend, ParallelCodeGenParallelismLevel,
27 LinkerOutputFile(LinkerOutputFile), SaveTemps(SaveTemps) {
28 assert(!LinkerOutputFile.empty() &&
"expected a valid linker output file");
33 addInput(std::unique_ptr<InputFile> InputPtr)
override;
59 Error saveInputArchiveMembers();
62 std::vector<std::shared_ptr<lto::InputFile>> InputFiles;
assert(UImm &&(UImm !=~static_cast< T >(0)) &&"Invalid immediate!")
Lightweight error class with error context and mandatory checking.
Tagged union holding either a T or a Error.
StringMap - This is an unconventional map that is specialized for handling keys that are "strings",...
StringRef - Represent a constant reference to a string, i.e.
Saves strings in the provided stable storage and returns a StringRef with a stable character pointer.
LLVM_ABI void cleanup() override
LLVM_ABI llvm::Error handleArchiveInputs() override
LLVM_ABI Expected< std::shared_ptr< InputFile > > addInput(std::unique_ptr< InputFile > InputPtr) override
LLVM_ABI DTLTO(Config Conf, ThinBackend Backend, unsigned ParallelCodeGenParallelismLevel, LTOKind LTOMode, StringRef LinkerOutputFile, bool SaveTemps)
LLVM_ABI LTO(Config Conf, ThinBackend Backend={}, unsigned ParallelCodeGenParallelismLevel=1, LTOKind LTOMode=LTOK_Default)
Create an LTO object.
LTOKind
Unified LTO modes.
This is an optimization pass for GlobalISel generic memory operations.
OutputIt move(R &&Range, OutputIt Out)
Provide wrappers to std::move which take ranges instead of having to pass begin/end explicitly.
BumpPtrAllocatorImpl<> BumpPtrAllocator
The standard BumpPtrAllocator which just uses the default template parameters.
Implement std::hash so that hash_code can be used in STL containers.
This type defines the behavior following the thin-link phase during ThinLTO.