LLVM 22.0.0git
llvm::jitlink::JITLinkMemoryManager::FinalizedAlloc Class Reference

Represents a finalized allocation. More...

#include "llvm/ExecutionEngine/JITLink/JITLinkMemoryManager.h"

Public Member Functions

 FinalizedAlloc ()=default
 FinalizedAlloc (orc::ExecutorAddr A)
 FinalizedAlloc (const FinalizedAlloc &)=delete
 FinalizedAlloc (FinalizedAlloc &&Other)
FinalizedAllocoperator= (const FinalizedAlloc &)=delete
FinalizedAllocoperator= (FinalizedAlloc &&Other)
 ~FinalizedAlloc ()
 operator bool () const
 FinalizedAllocs convert to false for default-constructed, and true otherwise.
orc::ExecutorAddr getAddress () const
 Returns the address associated with this finalized allocation.
orc::ExecutorAddr release ()
 Returns the address associated with this finalized allocation and resets this object to the default state.

Friends

class JITLinkMemoryManager

Detailed Description

Represents a finalized allocation.

Finalized allocations must be passed to the JITLinkMemoryManager:deallocate method prior to being destroyed.

The interpretation of the Address associated with the finalized allocation is up to the memory manager implementation. Common options are using the base address of the allocation, or the address of a memory management object that tracks the allocation.

Definition at line 59 of file JITLinkMemoryManager.h.

Constructor & Destructor Documentation

◆ FinalizedAlloc() [1/4]

llvm::jitlink::JITLinkMemoryManager::FinalizedAlloc::FinalizedAlloc ( )
default

◆ FinalizedAlloc() [2/4]

llvm::jitlink::JITLinkMemoryManager::FinalizedAlloc::FinalizedAlloc ( orc::ExecutorAddr A)
inlineexplicit

Definition at line 66 of file JITLinkMemoryManager.h.

References assert().

◆ FinalizedAlloc() [3/4]

llvm::jitlink::JITLinkMemoryManager::FinalizedAlloc::FinalizedAlloc ( const FinalizedAlloc & )
delete

References FinalizedAlloc().

◆ FinalizedAlloc() [4/4]

llvm::jitlink::JITLinkMemoryManager::FinalizedAlloc::FinalizedAlloc ( FinalizedAlloc && Other)
inline

Definition at line 71 of file JITLinkMemoryManager.h.

References FinalizedAlloc(), and llvm::Other.

◆ ~FinalizedAlloc()

llvm::jitlink::JITLinkMemoryManager::FinalizedAlloc::~FinalizedAlloc ( )
inline

Definition at line 81 of file JITLinkMemoryManager.h.

References assert().

Member Function Documentation

◆ getAddress()

orc::ExecutorAddr llvm::jitlink::JITLinkMemoryManager::FinalizedAlloc::getAddress ( ) const
inline

◆ operator bool()

llvm::jitlink::JITLinkMemoryManager::FinalizedAlloc::operator bool ( ) const
inlineexplicit

FinalizedAllocs convert to false for default-constructed, and true otherwise.

Default-constructed allocs need not be deallocated.

Definition at line 88 of file JITLinkMemoryManager.h.

◆ operator=() [1/2]

FinalizedAlloc & llvm::jitlink::JITLinkMemoryManager::FinalizedAlloc::operator= ( const FinalizedAlloc & )
delete

References FinalizedAlloc().

◆ operator=() [2/2]

FinalizedAlloc & llvm::jitlink::JITLinkMemoryManager::FinalizedAlloc::operator= ( FinalizedAlloc && Other)
inline

Definition at line 75 of file JITLinkMemoryManager.h.

References assert(), FinalizedAlloc(), llvm::Other, and std::swap().

◆ release()

orc::ExecutorAddr llvm::jitlink::JITLinkMemoryManager::FinalizedAlloc::release ( )
inline

Returns the address associated with this finalized allocation and resets this object to the default state.

This should only be used by allocators when deallocating memory.

Definition at line 97 of file JITLinkMemoryManager.h.

References llvm::orc::ExecutorAddr::setValue().

◆ JITLinkMemoryManager

friend class JITLinkMemoryManager
friend

Definition at line 60 of file JITLinkMemoryManager.h.

References JITLinkMemoryManager.

Referenced by JITLinkMemoryManager.


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