LLVM 22.0.0git
llvm::lto::ThinBackend Struct Reference

This type defines the behavior following the thin-link phase during ThinLTO. More...

#include "llvm/LTO/LTO.h"

Public Member Functions

 ThinBackend (ThinBackendFunction Func, ThreadPoolStrategy Parallelism)
 ThinBackend ()=default
std::unique_ptr< ThinBackendProcoperator() (const Config &Conf, ModuleSummaryIndex &CombinedIndex, const DenseMap< StringRef, GVSummaryMapTy > &ModuleToDefinedGVSummaries, AddStreamFn AddStream, FileCache Cache)
ThreadPoolStrategy getParallelism () const
bool isValid () const

Detailed Description

This type defines the behavior following the thin-link phase during ThinLTO.

It encapsulates a backend function and a strategy for thread pool parallelism. Clients should use one of the provided create*ThinBackend() functions to instantiate a ThinBackend. Parallelism defines the thread pool strategy to be used for processing.

Definition at line 279 of file LTO.h.

Constructor & Destructor Documentation

◆ ThinBackend() [1/2]

llvm::lto::ThinBackend::ThinBackend ( ThinBackendFunction Func,
ThreadPoolStrategy Parallelism )
inline

Definition at line 280 of file LTO.h.

References llvm::move().

◆ ThinBackend() [2/2]

llvm::lto::ThinBackend::ThinBackend ( )
default

Member Function Documentation

◆ getParallelism()

ThreadPoolStrategy llvm::lto::ThinBackend::getParallelism ( ) const
inline

Definition at line 292 of file LTO.h.

◆ isValid()

bool llvm::lto::ThinBackend::isValid ( ) const
inline

Definition at line 293 of file LTO.h.

Referenced by operator()().

◆ operator()()

std::unique_ptr< ThinBackendProc > llvm::lto::ThinBackend::operator() ( const Config & Conf,
ModuleSummaryIndex & CombinedIndex,
const DenseMap< StringRef, GVSummaryMapTy > & ModuleToDefinedGVSummaries,
AddStreamFn AddStream,
FileCache Cache )
inline

Definition at line 284 of file LTO.h.

References assert(), and isValid().


The documentation for this struct was generated from the following file: