LLVM  15.0.0git
Public Member Functions | Static Public Attributes | Friends | List of all members
llvm::jitlink::AllocGroup Class Reference

A pair of memory protections and allocation policies. More...

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

Collaboration diagram for llvm::jitlink::AllocGroup:
Collaboration graph
[legend]

Public Member Functions

 AllocGroup ()=default
 Create a default AllocGroup. More...
 
 AllocGroup (MemProt MP)
 Create an AllocGroup from a MemProt only – uses MemoryDeallocationPolicy::Standard. More...
 
 AllocGroup (MemProt MP, MemDeallocPolicy MDP)
 Create an AllocGroup from a MemProt and a MemoryDeallocationPolicy. More...
 
MemProt getMemProt () const
 Returns the MemProt for this group. More...
 
MemDeallocPolicy getMemDeallocPolicy () const
 Returns the MemoryDeallocationPolicy for this group. More...
 

Static Public Attributes

static constexpr unsigned NumGroups = MaxIdentifiers
 

Friends

struct llvm::DenseMapInfo< AllocGroup >
 
bool operator== (const AllocGroup &LHS, const AllocGroup &RHS)
 
bool operator!= (const AllocGroup &LHS, const AllocGroup &RHS)
 
bool operator< (const AllocGroup &LHS, const AllocGroup &RHS)
 

Detailed Description

A pair of memory protections and allocation policies.

Optimized for use as a small map key.

Definition at line 87 of file MemoryFlags.h.

Constructor & Destructor Documentation

◆ AllocGroup() [1/3]

llvm::jitlink::AllocGroup::AllocGroup ( )
default

Create a default AllocGroup.

No memory protections, standard deallocation policy.

◆ AllocGroup() [2/3]

llvm::jitlink::AllocGroup::AllocGroup ( MemProt  MP)
inline

Create an AllocGroup from a MemProt only – uses MemoryDeallocationPolicy::Standard.

Definition at line 105 of file MemoryFlags.h.

◆ AllocGroup() [3/3]

llvm::jitlink::AllocGroup::AllocGroup ( MemProt  MP,
MemDeallocPolicy  MDP 
)
inline

Create an AllocGroup from a MemProt and a MemoryDeallocationPolicy.

Definition at line 108 of file MemoryFlags.h.

Member Function Documentation

◆ getMemDeallocPolicy()

MemDeallocPolicy llvm::jitlink::AllocGroup::getMemDeallocPolicy ( ) const
inline

Returns the MemoryDeallocationPolicy for this group.

Definition at line 118 of file MemoryFlags.h.

Referenced by llvm::jitlink::operator<<().

◆ getMemProt()

MemProt llvm::jitlink::AllocGroup::getMemProt ( ) const
inline

Returns the MemProt for this group.

Definition at line 113 of file MemoryFlags.h.

Referenced by llvm::jitlink::operator<<().

Friends And Related Function Documentation

◆ llvm::DenseMapInfo< AllocGroup >

friend struct llvm::DenseMapInfo< AllocGroup >
friend

Definition at line 88 of file MemoryFlags.h.

◆ operator!=

bool operator!= ( const AllocGroup LHS,
const AllocGroup RHS 
)
friend

Definition at line 126 of file MemoryFlags.h.

◆ operator<

bool operator< ( const AllocGroup LHS,
const AllocGroup RHS 
)
friend

Definition at line 130 of file MemoryFlags.h.

◆ operator==

bool operator== ( const AllocGroup LHS,
const AllocGroup RHS 
)
friend

Definition at line 122 of file MemoryFlags.h.

Member Data Documentation

◆ NumGroups

constexpr unsigned llvm::jitlink::AllocGroup::NumGroups = MaxIdentifiers
staticconstexpr

Definition at line 97 of file MemoryFlags.h.

Referenced by llvm::jitlink::SimpleSegmentAlloc::Create().


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