fcml 1.3.0
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Static Public Member Functions | List of all members
fcml::Register Class Reference

x86 - 64 register representation. More...

#include <fcml_common.hpp>

Public Types

enum  RegisterType {
  REG_UNDEFINED = FCML_REG_UNDEFINED ,
  REG_GPR = FCML_REG_GPR ,
  REG_SIMD = FCML_REG_SIMD ,
  REG_FPU = FCML_REG_FPU ,
  REG_SEG = FCML_REG_SEG ,
  REG_CR = FCML_REG_CR ,
  REG_DR = FCML_REG_DR ,
  REG_IP = FCML_REG_IP ,
  REG_OPMASK = FCML_REG_OPMASK
}
 Register types. More...
 

Public Member Functions

 Register ()
 Creates an empty register instance.
 
 Register (const fcml_st_register &reg)
 Creates a register instance for given register structure.
 
 Register (fcml_uint8_t reg, fcml_usize size, RegisterType type=REG_GPR, fcml_bool x64_exp=FCML_FALSE)
 Creates a register instance for given parameters.
 
virtual ~Register ()
 
fcml_uint8_t getReg () const
 Gets the register number.
 
void setReg (fcml_uint8_t reg)
 Sets the register number.
 
fcml_usize getSize () const
 Gets the register size.
 
void setSize (fcml_usize size)
 Sets the register size.
 
RegisterType getType () const
 Gets the register type.
 
void setType (RegisterType type)
 Sets the register type.
 
bool getX64Exp () const
 Gets true if it's a 8-bit general purpose register for REX aware instruction.
 
void setX64Exp (bool x64Exp)
 Sets x64exp flag, see manual.
 
bool operator== (const Register &reg) const
 Compares registers.
 
bool operator!= (const Register &reg) const
 Compares registers.
 

Static Public Member Functions

static const Register UNDEF ()
 Factory method for an undefined register.
 
static const Register AL ()
 Factory method for a register.
 
static const Register AX ()
 Factory method for a register.
 
static const Register EAX ()
 Factory method for a register.
 
static const Register RAX ()
 Factory method for a register.
 
static const Register MM0 ()
 Factory method for a register.
 
static const Register XMM0 ()
 Factory method for a register.
 
static const Register YMM0 ()
 Factory method for a register.
 
static const Register ZMM0 ()
 Factory method for a register.
 
static const Register CL ()
 Factory method for a register.
 
static const Register CX ()
 Factory method for a register.
 
static const Register ECX ()
 Factory method for a register.
 
static const Register RCX ()
 Factory method for a register.
 
static const Register MM1 ()
 Factory method for a register.
 
static const Register XMM1 ()
 Factory method for a register.
 
static const Register YMM1 ()
 Factory method for a register.
 
static const Register ZMM1 ()
 Factory method for a register.
 
static const Register DL ()
 Factory method for a register.
 
static const Register DX ()
 Factory method for a register.
 
static const Register EDX ()
 Factory method for a register.
 
static const Register RDX ()
 Factory method for a register.
 
static const Register MM2 ()
 Factory method for a register.
 
static const Register XMM2 ()
 Factory method for a register.
 
static const Register YMM2 ()
 Factory method for a register.
 
static const Register ZMM2 ()
 Factory method for a register.
 
static const Register BL ()
 Factory method for a register.
 
static const Register BX ()
 Factory method for a register.
 
static const Register EBX ()
 Factory method for a register.
 
static const Register RBX ()
 Factory method for a register.
 
static const Register MM3 ()
 Factory method for a register.
 
static const Register XMM3 ()
 Factory method for a register.
 
static const Register YMM3 ()
 Factory method for a register.
 
static const Register ZMM3 ()
 Factory method for a register.
 
static const Register AH ()
 Factory method for a register.
 
static const Register SPL ()
 Factory method for a register.
 
static const Register SP ()
 Factory method for a register.
 
static const Register ESP ()
 Factory method for a register.
 
static const Register RSP ()
 Factory method for a register.
 
static const Register MM4 ()
 Factory method for a register.
 
static const Register XMM4 ()
 Factory method for a register.
 
static const Register YMM4 ()
 Factory method for a register.
 
static const Register ZMM4 ()
 Factory method for a register.
 
static const Register CH ()
 Factory method for a register.
 
static const Register BPL ()
 Factory method for a register.
 
static const Register BP ()
 Factory method for a register.
 
static const Register EBP ()
 Factory method for a register.
 
static const Register RBP ()
 Factory method for a register.
 
static const Register MM5 ()
 Factory method for a register.
 
static const Register XMM5 ()
 Factory method for a register.
 
static const Register YMM5 ()
 Factory method for a register.
 
static const Register ZMM5 ()
 Factory method for a register.
 
static const Register DH ()
 Factory method for a register.
 
static const Register SIL ()
 Factory method for a register.
 
static const Register SI ()
 Factory method for a register.
 
static const Register ESI ()
 Factory method for a register.
 
static const Register RSI ()
 Factory method for a register.
 
static const Register MM6 ()
 Factory method for a register.
 
static const Register XMM6 ()
 Factory method for a register.
 
static const Register YMM6 ()
 Factory method for a register.
 
static const Register ZMM6 ()
 Factory method for a register.
 
static const Register BH ()
 Factory method for a register.
 
static const Register DIL ()
 Factory method for a register.
 
static const Register DI ()
 Factory method for a register.
 
static const Register EDI ()
 Factory method for a register.
 
static const Register RDI ()
 Factory method for a register.
 
static const Register MM7 ()
 Factory method for a register.
 
static const Register XMM7 ()
 Factory method for a register.
 
static const Register YMM7 ()
 Factory method for a register.
 
static const Register ZMM7 ()
 Factory method for a register.
 
static const Register R8L ()
 Factory method for a register.
 
static const Register R8W ()
 Factory method for a register.
 
static const Register R8D ()
 Factory method for a register.
 
static const Register R8 ()
 Factory method for a register.
 
static const Register XMM8 ()
 Factory method for a register.
 
static const Register YMM8 ()
 Factory method for a register.
 
static const Register ZMM8 ()
 Factory method for a register.
 
static const Register R9L ()
 Factory method for a register.
 
static const Register R9W ()
 Factory method for a register.
 
static const Register R9D ()
 Factory method for a register.
 
static const Register R9 ()
 Factory method for a register.
 
static const Register XMM9 ()
 Factory method for a register.
 
static const Register YMM9 ()
 Factory method for a register.
 
static const Register ZMM9 ()
 Factory method for a register.
 
static const Register R10L ()
 Factory method for a register.
 
static const Register R10W ()
 Factory method for a register.
 
static const Register R10D ()
 Factory method for a register.
 
static const Register R10 ()
 Factory method for a register.
 
static const Register XMM10 ()
 Factory method for a register.
 
static const Register YMM10 ()
 Factory method for a register.
 
static const Register ZMM10 ()
 Factory method for a register.
 
static const Register R11L ()
 Factory method for a register.
 
static const Register R11W ()
 Factory method for a register.
 
static const Register R11D ()
 Factory method for a register.
 
static const Register R11 ()
 Factory method for a register.
 
static const Register XMM11 ()
 Factory method for a register.
 
static const Register YMM11 ()
 Factory method for a register.
 
static const Register ZMM11 ()
 Factory method for a register.
 
static const Register R12L ()
 Factory method for a register.
 
static const Register R12W ()
 Factory method for a register.
 
static const Register R12D ()
 Factory method for a register.
 
static const Register R12 ()
 Factory method for a register.
 
static const Register XMM12 ()
 Factory method for a register.
 
static const Register YMM12 ()
 Factory method for a register.
 
static const Register ZMM12 ()
 Factory method for a register.
 
static const Register R13L ()
 Factory method for a register.
 
static const Register R13W ()
 Factory method for a register.
 
static const Register R13D ()
 Factory method for a register.
 
static const Register R13 ()
 Factory method for a register.
 
static const Register XMM13 ()
 Factory method for a register.
 
static const Register YMM13 ()
 Factory method for a register.
 
static const Register ZMM13 ()
 Factory method for a register.
 
static const Register R14L ()
 Factory method for a register.
 
static const Register R14W ()
 Factory method for a register.
 
static const Register R14D ()
 Factory method for a register.
 
static const Register R14 ()
 Factory method for a register.
 
static const Register XMM14 ()
 Factory method for a register.
 
static const Register YMM14 ()
 Factory method for a register.
 
static const Register ZMM14 ()
 Factory method for a register.
 
static const Register R15L ()
 Factory method for a register.
 
static const Register R15W ()
 Factory method for a register.
 
static const Register R15D ()
 Factory method for a register.
 
static const Register R15 ()
 Factory method for a register.
 
static const Register XMM15 ()
 Factory method for a register.
 
static const Register YMM15 ()
 Factory method for a register.
 
static const Register ZMM15 ()
 Factory method for a register.
 
static const Register XMM16 ()
 Factory method for a register.
 
static const Register YMM16 ()
 Factory method for a register.
 
static const Register ZMM16 ()
 Factory method for a register.
 
static const Register XMM17 ()
 Factory method for a register.
 
static const Register YMM17 ()
 Factory method for a register.
 
static const Register ZMM17 ()
 Factory method for a register.
 
static const Register XMM18 ()
 Factory method for a register.
 
static const Register YMM18 ()
 Factory method for a register.
 
static const Register ZMM18 ()
 Factory method for a register.
 
static const Register XMM19 ()
 Factory method for a register.
 
static const Register YMM19 ()
 Factory method for a register.
 
static const Register ZMM19 ()
 Factory method for a register.
 
static const Register XMM20 ()
 Factory method for a register.
 
static const Register YMM20 ()
 Factory method for a register.
 
static const Register ZMM20 ()
 Factory method for a register.
 
static const Register XMM21 ()
 Factory method for a register.
 
static const Register YMM21 ()
 Factory method for a register.
 
static const Register ZMM21 ()
 Factory method for a register.
 
static const Register XMM22 ()
 Factory method for a register.
 
static const Register YMM22 ()
 Factory method for a register.
 
static const Register ZMM22 ()
 Factory method for a register.
 
static const Register XMM23 ()
 Factory method for a register.
 
static const Register YMM23 ()
 Factory method for a register.
 
static const Register ZMM23 ()
 Factory method for a register.
 
static const Register XMM24 ()
 Factory method for a register.
 
static const Register YMM24 ()
 Factory method for a register.
 
static const Register ZMM24 ()
 Factory method for a register.
 
static const Register XMM25 ()
 Factory method for a register.
 
static const Register YMM25 ()
 Factory method for a register.
 
static const Register ZMM25 ()
 Factory method for a register.
 
static const Register XMM26 ()
 Factory method for a register.
 
static const Register YMM26 ()
 Factory method for a register.
 
static const Register ZMM26 ()
 Factory method for a register.
 
static const Register XMM27 ()
 Factory method for a register.
 
static const Register YMM27 ()
 Factory method for a register.
 
static const Register ZMM27 ()
 Factory method for a register.
 
static const Register XMM28 ()
 Factory method for a register.
 
static const Register YMM28 ()
 Factory method for a register.
 
static const Register ZMM28 ()
 Factory method for a register.
 
static const Register XMM29 ()
 Factory method for a register.
 
static const Register YMM29 ()
 Factory method for a register.
 
static const Register ZMM29 ()
 Factory method for a register.
 
static const Register XMM30 ()
 Factory method for a register.
 
static const Register YMM30 ()
 Factory method for a register.
 
static const Register ZMM30 ()
 Factory method for a register.
 
static const Register XMM31 ()
 Factory method for a register.
 
static const Register YMM31 ()
 Factory method for a register.
 
static const Register ZMM31 ()
 Factory method for a register.
 
static const Register ES ()
 Factory method for a register.
 
static const Register CS ()
 Factory method for a register.
 
static const Register SS ()
 Factory method for a register.
 
static const Register DS ()
 Factory method for a register.
 
static const Register FS ()
 Factory method for a register.
 
static const Register GS ()
 Factory method for a register.
 
static const Register ST0 ()
 Factory method for a register.
 
static const Register ST1 ()
 Factory method for a register.
 
static const Register ST2 ()
 Factory method for a register.
 
static const Register ST3 ()
 Factory method for a register.
 
static const Register ST4 ()
 Factory method for a register.
 
static const Register ST5 ()
 Factory method for a register.
 
static const Register ST6 ()
 Factory method for a register.
 
static const Register ST7 ()
 Factory method for a register.
 
static const Register CR0 ()
 Factory method for a register.
 
static const Register CR2 ()
 Factory method for a register.
 
static const Register CR3 ()
 Factory method for a register.
 
static const Register CR4 ()
 Factory method for a register.
 
static const Register CR8 ()
 Factory method for a register.
 
static const Register DR0 ()
 Factory method for a register.
 
static const Register DR1 ()
 Factory method for a register.
 
static const Register DR2 ()
 Factory method for a register.
 
static const Register DR3 ()
 Factory method for a register.
 
static const Register DR4 ()
 Factory method for a register.
 
static const Register DR5 ()
 Factory method for a register.
 
static const Register DR6 ()
 Factory method for a register.
 
static const Register DR7 ()
 Factory method for a register.
 
static const Register IP ()
 Factory method for a register.
 
static const Register EIP ()
 Factory method for a register.
 
static const Register RIP ()
 Factory method for a register.
 
static const Register K0 ()
 Factory method for a register.
 
static const Register K1 ()
 Factory method for a register.
 
static const Register K2 ()
 Factory method for a register.
 
static const Register K3 ()
 Factory method for a register.
 
static const Register K4 ()
 Factory method for a register.
 
static const Register K5 ()
 Factory method for a register.
 
static const Register K6 ()
 Factory method for a register.
 
static const Register K7 ()
 Factory method for a register.
 

Detailed Description

x86 - 64 register representation.

Since
1.1.0

Member Enumeration Documentation

◆ RegisterType

Register types.

Since
1.1.0
Enumerator
REG_UNDEFINED 

Undefined register type.

REG_GPR 

General purpose register.

REG_SIMD 

SIMD (SSE, MMX) register.

REG_FPU 

FPU register.

REG_SEG 

Segment register.

REG_CR 

Control register.

REG_DR 

Debug register.

REG_IP 

Instruction pointer register.

Used for relative RIP addressing.

REG_OPMASK 

Opmask register.

Since
1.2.0

Constructor & Destructor Documentation

◆ Register() [1/3]

fcml::Register::Register ( )
inline

Creates an empty register instance.

Since
1.1.0

◆ Register() [2/3]

fcml::Register::Register ( const fcml_st_register reg)
inline

Creates a register instance for given register structure.

Parameters
regThe source register as the FCML structure.
Since
1.1.0

◆ Register() [3/3]

fcml::Register::Register ( fcml_uint8_t  reg,
fcml_usize  size,
RegisterType  type = REG_GPR,
fcml_bool  x64_exp = FCML_FALSE 
)
inline

Creates a register instance for given parameters.

Parameters
regThe FCML register number.
sizeThe register size.
typeThe register type.
x64_expTrue if it's a 8-bit general purpose register for REX aware instruction. See manual.
Since
1.1.0

◆ ~Register()

virtual fcml::Register::~Register ( )
inlinevirtual
Since
1.1.0

Member Function Documentation

◆ AH()

static const Register fcml::Register::AH ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ AL()

static const Register fcml::Register::AL ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ AX()

static const Register fcml::Register::AX ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ BH()

static const Register fcml::Register::BH ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ BL()

static const Register fcml::Register::BL ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ BP()

static const Register fcml::Register::BP ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ BPL()

static const Register fcml::Register::BPL ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ BX()

static const Register fcml::Register::BX ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ CH()

static const Register fcml::Register::CH ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ CL()

static const Register fcml::Register::CL ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ CR0()

static const Register fcml::Register::CR0 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ CR2()

static const Register fcml::Register::CR2 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ CR3()

static const Register fcml::Register::CR3 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ CR4()

static const Register fcml::Register::CR4 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ CR8()

static const Register fcml::Register::CR8 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ CS()

static const Register fcml::Register::CS ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ CX()

static const Register fcml::Register::CX ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ DH()

static const Register fcml::Register::DH ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ DI()

static const Register fcml::Register::DI ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ DIL()

static const Register fcml::Register::DIL ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ DL()

static const Register fcml::Register::DL ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ DR0()

static const Register fcml::Register::DR0 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ DR1()

static const Register fcml::Register::DR1 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ DR2()

static const Register fcml::Register::DR2 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ DR3()

static const Register fcml::Register::DR3 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ DR4()

static const Register fcml::Register::DR4 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ DR5()

static const Register fcml::Register::DR5 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ DR6()

static const Register fcml::Register::DR6 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ DR7()

static const Register fcml::Register::DR7 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ DS()

static const Register fcml::Register::DS ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ DX()

static const Register fcml::Register::DX ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ EAX()

static const Register fcml::Register::EAX ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ EBP()

static const Register fcml::Register::EBP ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ EBX()

static const Register fcml::Register::EBX ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ ECX()

static const Register fcml::Register::ECX ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ EDI()

static const Register fcml::Register::EDI ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ EDX()

static const Register fcml::Register::EDX ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ EIP()

static const Register fcml::Register::EIP ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ ES()

static const Register fcml::Register::ES ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ ESI()

static const Register fcml::Register::ESI ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ ESP()

static const Register fcml::Register::ESP ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ FS()

static const Register fcml::Register::FS ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ getReg()

fcml_uint8_t fcml::Register::getReg ( ) const
inline

Gets the register number.

Returns
The register number.
Since
1.1.0

◆ getSize()

fcml_usize fcml::Register::getSize ( ) const
inline

Gets the register size.

Returns
The register size.
Since
1.1.0

◆ getType()

RegisterType fcml::Register::getType ( ) const
inline

Gets the register type.

Returns
The register type.
Since
1.1.0

◆ getX64Exp()

bool fcml::Register::getX64Exp ( ) const
inline

Gets true if it's a 8-bit general purpose register for REX aware instruction.

See manual.

Returns
True if it's a 8-bit general purpose register for REX aware instruction. See manual..
Since
1.1.0

◆ GS()

static const Register fcml::Register::GS ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ IP()

static const Register fcml::Register::IP ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ K0()

static const Register fcml::Register::K0 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ K1()

static const Register fcml::Register::K1 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ K2()

static const Register fcml::Register::K2 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ K3()

static const Register fcml::Register::K3 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ K4()

static const Register fcml::Register::K4 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ K5()

static const Register fcml::Register::K5 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ K6()

static const Register fcml::Register::K6 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ K7()

static const Register fcml::Register::K7 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ MM0()

static const Register fcml::Register::MM0 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ MM1()

static const Register fcml::Register::MM1 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ MM2()

static const Register fcml::Register::MM2 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ MM3()

static const Register fcml::Register::MM3 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ MM4()

static const Register fcml::Register::MM4 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ MM5()

static const Register fcml::Register::MM5 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ MM6()

static const Register fcml::Register::MM6 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ MM7()

static const Register fcml::Register::MM7 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ operator!=()

bool fcml::Register::operator!= ( const Register reg) const
inline

Compares registers.

Parameters
regThe source register.
Returns
True if registers are NOT equal.
Since
1.1.0

◆ operator==()

bool fcml::Register::operator== ( const Register reg) const
inline

Compares registers.

Parameters
regThe source register.
Returns
True if registers are equal.
Since
1.1.0

◆ R10()

static const Register fcml::Register::R10 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ R10D()

static const Register fcml::Register::R10D ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ R10L()

static const Register fcml::Register::R10L ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ R10W()

static const Register fcml::Register::R10W ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ R11()

static const Register fcml::Register::R11 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ R11D()

static const Register fcml::Register::R11D ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ R11L()

static const Register fcml::Register::R11L ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ R11W()

static const Register fcml::Register::R11W ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ R12()

static const Register fcml::Register::R12 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ R12D()

static const Register fcml::Register::R12D ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ R12L()

static const Register fcml::Register::R12L ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ R12W()

static const Register fcml::Register::R12W ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ R13()

static const Register fcml::Register::R13 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ R13D()

static const Register fcml::Register::R13D ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ R13L()

static const Register fcml::Register::R13L ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ R13W()

static const Register fcml::Register::R13W ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ R14()

static const Register fcml::Register::R14 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ R14D()

static const Register fcml::Register::R14D ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ R14L()

static const Register fcml::Register::R14L ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ R14W()

static const Register fcml::Register::R14W ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ R15()

static const Register fcml::Register::R15 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ R15D()

static const Register fcml::Register::R15D ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ R15L()

static const Register fcml::Register::R15L ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ R15W()

static const Register fcml::Register::R15W ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ R8()

static const Register fcml::Register::R8 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ R8D()

static const Register fcml::Register::R8D ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ R8L()

static const Register fcml::Register::R8L ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ R8W()

static const Register fcml::Register::R8W ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ R9()

static const Register fcml::Register::R9 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ R9D()

static const Register fcml::Register::R9D ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ R9L()

static const Register fcml::Register::R9L ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ R9W()

static const Register fcml::Register::R9W ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ RAX()

static const Register fcml::Register::RAX ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ RBP()

static const Register fcml::Register::RBP ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ RBX()

static const Register fcml::Register::RBX ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ RCX()

static const Register fcml::Register::RCX ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ RDI()

static const Register fcml::Register::RDI ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ RDX()

static const Register fcml::Register::RDX ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ RIP()

static const Register fcml::Register::RIP ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ RSI()

static const Register fcml::Register::RSI ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ RSP()

static const Register fcml::Register::RSP ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ setReg()

void fcml::Register::setReg ( fcml_uint8_t  reg)
inline

Sets the register number.

Parameters
regThe register number.
Since
1.1.0

◆ setSize()

void fcml::Register::setSize ( fcml_usize  size)
inline

Sets the register size.

Parameters
sizeThe register size.
Since
1.1.0

◆ setType()

void fcml::Register::setType ( RegisterType  type)
inline

Sets the register type.

Parameters
typeThe register type.
Since
1.1.0

◆ setX64Exp()

void fcml::Register::setX64Exp ( bool  x64Exp)
inline

Sets x64exp flag, see manual.

Parameters
x64ExpThe flag value.
Since
1.1.0

◆ SI()

static const Register fcml::Register::SI ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ SIL()

static const Register fcml::Register::SIL ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ SP()

static const Register fcml::Register::SP ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ SPL()

static const Register fcml::Register::SPL ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ SS()

static const Register fcml::Register::SS ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ ST0()

static const Register fcml::Register::ST0 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ ST1()

static const Register fcml::Register::ST1 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ ST2()

static const Register fcml::Register::ST2 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ ST3()

static const Register fcml::Register::ST3 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ ST4()

static const Register fcml::Register::ST4 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ ST5()

static const Register fcml::Register::ST5 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ ST6()

static const Register fcml::Register::ST6 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ ST7()

static const Register fcml::Register::ST7 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ UNDEF()

static const Register fcml::Register::UNDEF ( )
inlinestatic

Factory method for an undefined register.

Returns
A register instance.
Since
1.1.0

◆ XMM0()

static const Register fcml::Register::XMM0 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ XMM1()

static const Register fcml::Register::XMM1 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ XMM10()

static const Register fcml::Register::XMM10 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ XMM11()

static const Register fcml::Register::XMM11 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ XMM12()

static const Register fcml::Register::XMM12 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ XMM13()

static const Register fcml::Register::XMM13 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ XMM14()

static const Register fcml::Register::XMM14 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ XMM15()

static const Register fcml::Register::XMM15 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ XMM16()

static const Register fcml::Register::XMM16 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ XMM17()

static const Register fcml::Register::XMM17 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ XMM18()

static const Register fcml::Register::XMM18 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ XMM19()

static const Register fcml::Register::XMM19 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ XMM2()

static const Register fcml::Register::XMM2 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ XMM20()

static const Register fcml::Register::XMM20 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ XMM21()

static const Register fcml::Register::XMM21 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ XMM22()

static const Register fcml::Register::XMM22 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ XMM23()

static const Register fcml::Register::XMM23 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ XMM24()

static const Register fcml::Register::XMM24 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ XMM25()

static const Register fcml::Register::XMM25 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ XMM26()

static const Register fcml::Register::XMM26 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ XMM27()

static const Register fcml::Register::XMM27 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ XMM28()

static const Register fcml::Register::XMM28 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ XMM29()

static const Register fcml::Register::XMM29 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ XMM3()

static const Register fcml::Register::XMM3 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ XMM30()

static const Register fcml::Register::XMM30 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ XMM31()

static const Register fcml::Register::XMM31 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ XMM4()

static const Register fcml::Register::XMM4 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ XMM5()

static const Register fcml::Register::XMM5 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ XMM6()

static const Register fcml::Register::XMM6 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ XMM7()

static const Register fcml::Register::XMM7 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ XMM8()

static const Register fcml::Register::XMM8 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ XMM9()

static const Register fcml::Register::XMM9 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ YMM0()

static const Register fcml::Register::YMM0 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ YMM1()

static const Register fcml::Register::YMM1 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ YMM10()

static const Register fcml::Register::YMM10 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ YMM11()

static const Register fcml::Register::YMM11 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ YMM12()

static const Register fcml::Register::YMM12 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ YMM13()

static const Register fcml::Register::YMM13 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ YMM14()

static const Register fcml::Register::YMM14 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ YMM15()

static const Register fcml::Register::YMM15 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ YMM16()

static const Register fcml::Register::YMM16 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ YMM17()

static const Register fcml::Register::YMM17 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ YMM18()

static const Register fcml::Register::YMM18 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ YMM19()

static const Register fcml::Register::YMM19 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ YMM2()

static const Register fcml::Register::YMM2 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ YMM20()

static const Register fcml::Register::YMM20 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ YMM21()

static const Register fcml::Register::YMM21 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ YMM22()

static const Register fcml::Register::YMM22 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ YMM23()

static const Register fcml::Register::YMM23 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ YMM24()

static const Register fcml::Register::YMM24 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ YMM25()

static const Register fcml::Register::YMM25 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ YMM26()

static const Register fcml::Register::YMM26 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ YMM27()

static const Register fcml::Register::YMM27 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ YMM28()

static const Register fcml::Register::YMM28 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ YMM29()

static const Register fcml::Register::YMM29 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ YMM3()

static const Register fcml::Register::YMM3 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ YMM30()

static const Register fcml::Register::YMM30 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ YMM31()

static const Register fcml::Register::YMM31 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ YMM4()

static const Register fcml::Register::YMM4 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ YMM5()

static const Register fcml::Register::YMM5 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ YMM6()

static const Register fcml::Register::YMM6 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ YMM7()

static const Register fcml::Register::YMM7 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ YMM8()

static const Register fcml::Register::YMM8 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ YMM9()

static const Register fcml::Register::YMM9 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.1.0

◆ ZMM0()

static const Register fcml::Register::ZMM0 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ ZMM1()

static const Register fcml::Register::ZMM1 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ ZMM10()

static const Register fcml::Register::ZMM10 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ ZMM11()

static const Register fcml::Register::ZMM11 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ ZMM12()

static const Register fcml::Register::ZMM12 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ ZMM13()

static const Register fcml::Register::ZMM13 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ ZMM14()

static const Register fcml::Register::ZMM14 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ ZMM15()

static const Register fcml::Register::ZMM15 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ ZMM16()

static const Register fcml::Register::ZMM16 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ ZMM17()

static const Register fcml::Register::ZMM17 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ ZMM18()

static const Register fcml::Register::ZMM18 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ ZMM19()

static const Register fcml::Register::ZMM19 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ ZMM2()

static const Register fcml::Register::ZMM2 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ ZMM20()

static const Register fcml::Register::ZMM20 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ ZMM21()

static const Register fcml::Register::ZMM21 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ ZMM22()

static const Register fcml::Register::ZMM22 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ ZMM23()

static const Register fcml::Register::ZMM23 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ ZMM24()

static const Register fcml::Register::ZMM24 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ ZMM25()

static const Register fcml::Register::ZMM25 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ ZMM26()

static const Register fcml::Register::ZMM26 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ ZMM27()

static const Register fcml::Register::ZMM27 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ ZMM28()

static const Register fcml::Register::ZMM28 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ ZMM29()

static const Register fcml::Register::ZMM29 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ ZMM3()

static const Register fcml::Register::ZMM3 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ ZMM30()

static const Register fcml::Register::ZMM30 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ ZMM31()

static const Register fcml::Register::ZMM31 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ ZMM4()

static const Register fcml::Register::ZMM4 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ ZMM5()

static const Register fcml::Register::ZMM5 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ ZMM6()

static const Register fcml::Register::ZMM6 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ ZMM7()

static const Register fcml::Register::ZMM7 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ ZMM8()

static const Register fcml::Register::ZMM8 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

◆ ZMM9()

static const Register fcml::Register::ZMM9 ( )
inlinestatic

Factory method for a register.

Returns
A register instance.
Since
1.2.0

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