|
LLVM
4.0.0
|
#include "llvm/ADT/MapVector.h"#include "llvm/ADT/StringMap.h"#include "llvm/ADT/StringSet.h"#include "llvm/CodeGen/Analysis.h"#include "llvm/IR/DiagnosticInfo.h"#include "llvm/IR/ModuleSummaryIndex.h"#include "llvm/LTO/Config.h"#include "llvm/Linker/IRMover.h"#include "llvm/Object/IRObjectFile.h"#include "llvm/Support/thread.h"#include "llvm/Target/TargetOptions.h"#include "llvm/Transforms/IPO/FunctionImport.h"Go to the source code of this file.
Classes | |
| class | llvm::lto::InputFile |
| An input file. More... | |
| class | llvm::lto::InputFile::Symbol |
| This is a wrapper for ArrayRef<ModuleSymbolTable::Symbol>::iterator that exposes only the information that an LTO client should need in order to do symbol resolution. More... | |
| class | llvm::lto::InputFile::symbol_iterator |
| class | llvm::lto::NativeObjectStream |
| This class wraps an output stream for a native object. More... | |
| class | llvm::lto::LTO |
| This class implements a resolution-based interface to LLVM's LTO functionality. More... | |
| struct | llvm::lto::LTO::RegularLTOState::CommonResolution |
| struct | llvm::lto::SymbolResolution |
| The resolution for a symbol. More... | |
Namespaces | |
| llvm | |
| Compute iterated dominance frontiers using a linear time algorithm. | |
| llvm::lto | |
Typedefs | |
| typedef std::function < std::unique_ptr < NativeObjectStream >unsigned Task)> | llvm::lto::AddStreamFn |
| This type defines the callback to add a native object that is generated on the fly. More... | |
| typedef std::function < AddStreamFn(unsigned Task, StringRef Key)> | llvm::lto::NativeObjectCache |
| This is the type of a native object cache. More... | |
| typedef std::function < std::unique_ptr < ThinBackendProc > Config &C, ModuleSummaryIndex &CombinedIndex, StringMap < GVSummaryMapTy > &ModuleToDefinedGVSummaries, AddStreamFn AddStream, NativeObjectCache Cache)> | llvm::lto::ThinBackend |
| A ThinBackend defines what happens after the thin-link phase during ThinLTO. More... | |
Functions | |
| void | llvm::thinLTOResolveWeakForLinkerInIndex (ModuleSummaryIndex &Index, function_ref< bool(GlobalValue::GUID, const GlobalValueSummary *)> isPrevailing, function_ref< void(StringRef, GlobalValue::GUID, GlobalValue::LinkageTypes)> recordNewLinkage) |
Resolve Weak and LinkOnce values in the Index. More... | |
| void | llvm::thinLTOInternalizeAndPromoteInIndex (ModuleSummaryIndex &Index, function_ref< bool(StringRef, GlobalValue::GUID)> isExported) |
Update the linkages in the given Index to mark exported values as external and non-exported values as internal. More... | |
| std::string | llvm::lto::getThinLTOOutputFile (const std::string &Path, const std::string &OldPrefix, const std::string &NewPrefix) |
Given the original Path to an output file, replace any path prefix matching OldPrefix with NewPrefix. More... | |
| ThinBackend | llvm::lto::createInProcessThinBackend (unsigned ParallelismLevel) |
| This ThinBackend runs the individual backend jobs in-process. More... | |
| ThinBackend | llvm::lto::createWriteIndexesThinBackend (std::string OldPrefix, std::string NewPrefix, bool ShouldEmitImportsFiles, std::string LinkedObjectsFile) |
| This ThinBackend writes individual module indexes to files, instead of running the individual backend jobs. More... | |
1.8.6