AsmJit
Low-Latency Machine Code Generation
Docs
Interactive Parser
Support
GitHub
API Reference
Index
Class List
Build Instructions
Breaking Changes
Core
Assembler
Builder
Compiler
Function
Logging
Error Handling
Instruction DB
Virtual Memory
Zone Memory
Utilities
X86 Backend
ARM Commons
AArch64 Backend
Index
⭢
Zone Memory
⭢
asmjit::ZoneStack< T >
asmjit::ZoneStack< T > Class Template Reference
[¶]
Inheritance diagram for asmjit::ZoneStack< T >:
template<typename T>
class asmjit::ZoneStack< T >
Zone allocated stack container.
Static Public Attributes
Constants
static
constexpr
uint32_t
kNumBlockItems
=
uint32_t
((kBlockSize -
sizeof
(
Block
)) /
sizeof
(T))
static
constexpr
uint32_t
kStartBlockIndex
=
uint32_t
(
sizeof
(
Block
))
static
constexpr
uint32_t
kMidBlockIndex
=
uint32_t
(kStartBlockIndex +(kNumBlockItems / 2)*
sizeof
(T))
static
constexpr
uint32_t
kEndBlockIndex
=
uint32_t
(kStartBlockIndex +(kNumBlockItems)*
sizeof
(T))
Static Public Attributes inherited from
asmjit::ZoneStackBase
static
constexpr
size_t
kBlockIndexPrev
= 0
static
constexpr
size_t
kBlockIndexNext
= 1
static
constexpr
size_t
kBlockIndexFirst
= 0
static
constexpr
size_t
kBlockIndexLast
= 1
static
constexpr
size_t
kBlockSize
= ZoneAllocator::kHiMaxSize
Member Functions
ZoneStack
(
const
ZoneStack
& other) =
delete
ZoneStack
&
operator=
(
const
ZoneStack
& other) =
delete
Construction & Destruction
ZoneStack
()
noexcept
~ZoneStack
()
noexcept
Error
init
(
ZoneAllocator
*
allocator
)
noexcept
Utilities
Error
prepend
(T item)
noexcept
Error
append
(T item)
noexcept
T
popFirst
()
noexcept
T
pop
()
noexcept
Public Member Functions inherited from
asmjit::ZoneStackBase
ZoneStackBase
(
const
ZoneStackBase
& other) =
delete
ZoneStackBase
&
operator=
(
const
ZoneStackBase
& other) =
delete
ZoneStackBase
()
noexcept
~ZoneStackBase
()
noexcept
bool
isInitialized
()
const
noexcept
Error
_init
(
ZoneAllocator
*
allocator
,
size_t
middleIndex)
noexcept
Error
reset
()
noexcept
ZoneAllocator
*
allocator
()
const
noexcept
bool
empty
()
const
noexcept
Additional Inherited Members
Public Attributes inherited from
asmjit::ZoneStackBase
ZoneAllocator
*
_allocator
{}
Block
*
_block
[2] {}