asmjit::x86::SReg Class Reference

Segment register (X86).

Static Public Attributes

- Static Public Attributes inherited from asmjit::BaseReg

Public Types

- Public Types inherited from asmjit::x86::Reg
- Public Types inherited from asmjit::BaseReg
- Public Types inherited from asmjit::Operand_

Member Functions

- Public Member Functions inherited from asmjit::x86::Reg
- Public Member Functions inherited from asmjit::BaseReg
- Public Member Functions inherited from asmjit::Operand
- Public Member Functions inherited from asmjit::Operand_

Static Functions

- Static Public Member Functions inherited from asmjit::x86::Reg
- Static Public Member Functions inherited from asmjit::BaseReg
- Static Public Member Functions inherited from asmjit::Operand_

Additional Inherited Members

- Public Attributes inherited from asmjit::Operand_

Member Enumeration Documentation

x86::SReg::Id : uint32_tenum

X86 segment id.

ConstantDescription
kIdNone 

No segment (default).

kIdEs 

ES segment.

kIdCs 

CS segment.

kIdSs 

SS segment.

kIdDs 

DS segment.

kIdFs 

FS segment.

kIdGs 

GS segment.

kIdCount 

Count of X86 segment registers supported by AsmJit.

\note X86 architecture has 6 segment registers - ES, CS, SS, DS, FS, GS.
X64 architecture lowers them down to just FS and GS. AsmJit supports 7
segment registers - all addressable in both X86 and X64 modes and one
extra called `SReg::kIdNone`, which is AsmJit specific and means that
there is no segment register specified. 

Constructor & Destructor Documentation

x86::SReg::SReg()constexprconstexprnoexcept[1/6]

Default constructor that only setups basics.

x86::SReg::SReg(const SReg& other)constexprconstexprnoexcept[2/6]

Makes a copy of the other register operand.

x86::SReg::SReg(const BaseReg& other, uint32_t rId)constexprconstexprnoexcept[3/6]

Makes a copy of the other register having id set to rId

x86::SReg::SReg(const SignatureAndId& sid)constexprexplicitconstexprnoexcept[4/6]

Creates a register based on signature and rId.

x86::SReg::SReg(Globals::NoInit_)explicitnoexcept[5/6]

Creates a completely uninitialized SReg register operand (garbage).

x86::SReg::SReg(uint32_t rId)constexprexplicitconstexprnoexcept[6/6]

Creates a register operand having its id set to rId.

Member Function Documentation

SReg x86::SReg::fromTypeAndId(uint32_t rType, uint32_t rId)staticnoexcept

Creates a new register from register type and id.

SReg x86::SReg::fromSignatureAndId(uint32_t rSgn, uint32_t rId)staticnoexcept

Creates a new register from register signature and id.

SReg x86::SReg::clone() constconstexprconstexprnoexcept

Clones the register operand.