LLVM  15.0.0git
Public Member Functions | List of all members
llvm::orc::detail::ABISupportImpl< ORCABI > Class Template Reference

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

Inheritance diagram for llvm::orc::detail::ABISupportImpl< ORCABI >:
Inheritance graph
[legend]
Collaboration diagram for llvm::orc::detail::ABISupportImpl< ORCABI >:
Collaboration graph
[legend]

Public Member Functions

 ABISupportImpl ()
 
void writeResolverCode (char *ResolverWorkingMem, JITTargetAddress ResolverTargetAddr, JITTargetAddress ReentryFnAddr, JITTargetAddress ReentryCtxAddr) const override
 
void writeTrampolines (char *TrampolineBlockWorkingMem, JITTargetAddress TrampolineBlockTargetAddr, JITTargetAddress ResolverAddr, unsigned NumTrampolines) const override
 
void writeIndirectStubsBlock (char *StubsBlockWorkingMem, JITTargetAddress StubsBlockTargetAddress, JITTargetAddress PointersBlockTargetAddress, unsigned NumStubs) const override
 
- Public Member Functions inherited from llvm::orc::EPCIndirectionUtils::ABISupport
virtual ~ABISupport ()
 
unsigned getPointerSize () const
 
unsigned getTrampolineSize () const
 
unsigned getStubSize () const
 
unsigned getStubToPointerMaxDisplacement () const
 
unsigned getResolverCodeSize () const
 

Additional Inherited Members

- Protected Member Functions inherited from llvm::orc::EPCIndirectionUtils::ABISupport
 ABISupport (unsigned PointerSize, unsigned TrampolineSize, unsigned StubSize, unsigned StubToPointerMaxDisplacement, unsigned ResolverCodeSize)
 

Detailed Description

template<typename ORCABI>
class llvm::orc::detail::ABISupportImpl< ORCABI >

Definition at line 176 of file EPCIndirectionUtils.h.

Constructor & Destructor Documentation

◆ ABISupportImpl()

template<typename ORCABI >
llvm::orc::detail::ABISupportImpl< ORCABI >::ABISupportImpl ( )
inline

Definition at line 178 of file EPCIndirectionUtils.h.

Member Function Documentation

◆ writeIndirectStubsBlock()

template<typename ORCABI >
void llvm::orc::detail::ABISupportImpl< ORCABI >::writeIndirectStubsBlock ( char *  StubsBlockWorkingMem,
JITTargetAddress  StubsBlockTargetAddress,
JITTargetAddress  PointersBlockTargetAddress,
unsigned  NumStubs 
) const
inlineoverridevirtual

Implements llvm::orc::EPCIndirectionUtils::ABISupport.

Definition at line 200 of file EPCIndirectionUtils.h.

◆ writeResolverCode()

template<typename ORCABI >
void llvm::orc::detail::ABISupportImpl< ORCABI >::writeResolverCode ( char *  ResolverWorkingMem,
JITTargetAddress  ResolverTargetAddr,
JITTargetAddress  ReentryFnAddr,
JITTargetAddress  ReentryCtxAddr 
) const
inlineoverridevirtual

Implements llvm::orc::EPCIndirectionUtils::ABISupport.

Definition at line 183 of file EPCIndirectionUtils.h.

◆ writeTrampolines()

template<typename ORCABI >
void llvm::orc::detail::ABISupportImpl< ORCABI >::writeTrampolines ( char *  TrampolineBlockWorkingMem,
JITTargetAddress  TrampolineBlockTargetAddr,
JITTargetAddress  ResolverAddr,
unsigned  NumTrampolines 
) const
inlineoverridevirtual

Implements llvm::orc::EPCIndirectionUtils::ABISupport.

Definition at line 191 of file EPCIndirectionUtils.h.


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