
AsmJit
Low-Latency Machine Code Generation
Vector register (XMM|YMM|ZMM) (X86|X86_64).
To get a specific register you can use:
x86::xmm0
or x86::ymm1
, x86::zmm2
, etc...x86::xmm(id)
, x86::ymm(id)
, and x86::zmm(id)
Vec::make_v[128|256|512](id)
or Vec::make_[xmm|ymm|zmm](id)
API for convenienceTo cast a register to a specific type, use Vec::v128(), Vec::v256(), Vec::v512(), Vec::xmm(), Vec::ymm(), and Vec::zmm() member functions. Each cast first clones the register and then changes its signature to match the register it has been casted to.
Default constructor that only setups basics.
Makes a copy of the other
register operand.
Makes a copy of the other
register having id set to id
Creates a register based on signature
and id
.
Creates a completely uninitialized Vec register operand (garbage).
Creates a new register from register type and id.
Creates a new 128-bit vector register (XMM) having the given register id regId
.
Creates a new 256-bit vector register (YMM) having the given register id regId
.
Creates a new 512-bit vector register (ZMM) having the given register id regId
.
Creates a new 128-bit vector register (XMM) having the given register id regId
.
Creates a new 256-bit vector register (YMM) having the given register id regId
.
Creates a new 512-bit vector register (ZMM) having the given register id regId
.
Tests whether the register is a 128-bit vector (XMM).
Tests whether the register is a 256-bit vector (YMM).
Tests whether the register is a 512-bit vector (ZMM).
Clones and casts this register to XMM (Vec128).
Clones and casts this register to YMM (Vec256).
Clones and casts this register to ZMM (Vec512).
Clones and casts this register to a register that has half the size (or XMM if it's already XMM).