Skip to content

Class simtix::InstrPool

template <class InstrType>

ClassList > simtix > InstrPool

InstrPool manages the allocation and recycling of instruction objects.More...

  • #include <instr_pool.h>

Inherits the following classes: simtix::InstrPoolInterface

Public Functions

Type Name
virtual Instr * Allocate (Warp *, uint32_t, uint64_t) override
Allocate an <Instr> object from the pool.
InstrPool (const InstrPool &) = delete
virtual void Recycle (Instr *) override
Recycle an allocated <Instr> object back to the pool.
InstrPool & operator= (const InstrPool &) = delete
size_t size () const

Public Functions inherited from simtix::InstrPoolInterface

See simtix::InstrPoolInterface

Type Name
virtual Instr * Allocate (Warp *, uint32_t, uint64_t) = 0
Allocate an <Instr> object from the pool.
virtual void Recycle (Instr *) = 0
Recycle an allocated <Instr> object back to the pool.

Public Static Functions

Type Name
InstrPool & GetInstance ()

Detailed Description

When a new instruction is needed, it is taken from the pool or newly created, and after use, it is recycled for future use.

Public Functions Documentation

function Allocate

Allocate an <Instr> object from the pool.

inline virtual Instr * simtix::InstrPool::Allocate (
    Warp *,
    uint32_t,
    uint64_t
) override

Implements simtix::InstrPoolInterface::Allocate


function InstrPool [1/2]

simtix::InstrPool::InstrPool (
    const InstrPool &
) = delete

function Recycle

Recycle an allocated <Instr> object back to the pool.

inline virtual void simtix::InstrPool::Recycle (
    Instr *
) override

Implements simtix::InstrPoolInterface::Recycle


function operator=

InstrPool & simtix::InstrPool::operator= (
    const InstrPool &
) = delete

function size

inline size_t simtix::InstrPool::size () const

Public Static Functions Documentation

function GetInstance

static inline InstrPool & simtix::InstrPool::GetInstance () 


The documentation for this class was generated from the following file projects/simtix/src/simtix/sm/instr_pool.h