AsmGrader 0.0.0
Loading...
Searching...
No Matches
asmgrader::Aarch64FlagsBase< Base > Struct Template Reference

Derived classes should use Aarch64FlagsBase with the CRTP pattern. More...

#include <registers_state.hpp>

Public Member Functions

constexpr bool n () const
 
constexpr bool z () const
 
constexpr bool c () const
 
constexpr bool v () const
 
constexpr u64 nzcv () const
 

Static Protected Attributes

static constexpr u64 NZCV_BASE_OFF = 28
 
static constexpr u64 NEGATIVE_FLAG_BIT = 1U << (NZCV_BASE_OFF + 3)
 
static constexpr u64 ZERO_FLAG_BIT = 1U << (NZCV_BASE_OFF + 2)
 
static constexpr u64 CARRY_FLAG_BIT = 1U << (NZCV_BASE_OFF + 1)
 
static constexpr u64 OVERFLOW_FLAG_BIT = 1U << (NZCV_BASE_OFF + 0)
 

Detailed Description

template<typename Base>
struct asmgrader::Aarch64FlagsBase< Base >

Derived classes should use Aarch64FlagsBase with the CRTP pattern.

Member Function Documentation

◆ c()

template<typename Base >
bool asmgrader::Aarch64FlagsBase< Base >::c ( ) const
inlineconstexpr

◆ n()

template<typename Base >
bool asmgrader::Aarch64FlagsBase< Base >::n ( ) const
inlineconstexpr

◆ nzcv()

template<typename Base >
u64 asmgrader::Aarch64FlagsBase< Base >::nzcv ( ) const
inlineconstexpr

◆ v()

template<typename Base >
bool asmgrader::Aarch64FlagsBase< Base >::v ( ) const
inlineconstexpr

◆ z()

template<typename Base >
bool asmgrader::Aarch64FlagsBase< Base >::z ( ) const
inlineconstexpr

Member Data Documentation

◆ CARRY_FLAG_BIT

template<typename Base >
u64 asmgrader::Aarch64FlagsBase< Base >::CARRY_FLAG_BIT = 1U << (NZCV_BASE_OFF + 1)
staticconstexprprotected

◆ NEGATIVE_FLAG_BIT

template<typename Base >
u64 asmgrader::Aarch64FlagsBase< Base >::NEGATIVE_FLAG_BIT = 1U << (NZCV_BASE_OFF + 3)
staticconstexprprotected

◆ NZCV_BASE_OFF

template<typename Base >
u64 asmgrader::Aarch64FlagsBase< Base >::NZCV_BASE_OFF = 28
staticconstexprprotected

◆ OVERFLOW_FLAG_BIT

template<typename Base >
u64 asmgrader::Aarch64FlagsBase< Base >::OVERFLOW_FLAG_BIT = 1U << (NZCV_BASE_OFF + 0)
staticconstexprprotected

◆ ZERO_FLAG_BIT

template<typename Base >
u64 asmgrader::Aarch64FlagsBase< Base >::ZERO_FLAG_BIT = 1U << (NZCV_BASE_OFF + 2)
staticconstexprprotected

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