LLVM 20.0.0git
Classes | Public Types | Public Member Functions | Static Public Member Functions | List of all members
llvm::orc::JITLinkReentryTrampolines Class Reference

Produces trampolines on request using JITLink. More...

#include "llvm/ExecutionEngine/Orc/JITLinkReentryTrampolines.h"

Classes

class  TrampolineAddrScraperPlugin
 

Public Types

using EmitTrampolineFn = unique_function< jitlink::Symbol &(jitlink::LinkGraph &G, jitlink::Section &Sec, jitlink::Symbol &ReentrySym)>
 
using OnTrampolinesReadyFn = unique_function< void(Expected< std::vector< ExecutorSymbolDef > > EntryAddrs)>
 

Public Member Functions

 JITLinkReentryTrampolines (ObjectLinkingLayer &ObjLinkingLayer, EmitTrampolineFn EmitTrampoline)
 
 JITLinkReentryTrampolines (JITLinkReentryTrampolines &&)=delete
 
JITLinkReentryTrampolinesoperator= (JITLinkReentryTrampolines &&)=delete
 
void emit (ResourceTrackerSP RT, size_t NumTrampolines, OnTrampolinesReadyFn OnTrampolinesReady)
 

Static Public Member Functions

static Expected< std::unique_ptr< JITLinkReentryTrampolines > > Create (ObjectLinkingLayer &ObjLinkingLayer)
 Create trampolines using the default reentry trampoline function for the session triple.
 

Detailed Description

Produces trampolines on request using JITLink.

Definition at line 35 of file JITLinkReentryTrampolines.h.

Member Typedef Documentation

◆ EmitTrampolineFn

Definition at line 37 of file JITLinkReentryTrampolines.h.

◆ OnTrampolinesReadyFn

Definition at line 40 of file JITLinkReentryTrampolines.h.

Constructor & Destructor Documentation

◆ JITLinkReentryTrampolines() [1/2]

llvm::orc::JITLinkReentryTrampolines::JITLinkReentryTrampolines ( ObjectLinkingLayer ObjLinkingLayer,
EmitTrampolineFn  EmitTrampoline 
)

◆ JITLinkReentryTrampolines() [2/2]

llvm::orc::JITLinkReentryTrampolines::JITLinkReentryTrampolines ( JITLinkReentryTrampolines &&  )
delete

Member Function Documentation

◆ Create()

Expected< std::unique_ptr< JITLinkReentryTrampolines > > llvm::orc::JITLinkReentryTrampolines::Create ( ObjectLinkingLayer ObjLinkingLayer)
static

◆ emit()

void llvm::orc::JITLinkReentryTrampolines::emit ( ResourceTrackerSP  RT,
size_t  NumTrampolines,
OnTrampolinesReadyFn  OnTrampolinesReady 
)

◆ operator=()

JITLinkReentryTrampolines & llvm::orc::JITLinkReentryTrampolines::operator= ( JITLinkReentryTrampolines &&  )
delete

The documentation for this class was generated from the following files: