vextractf128
Extract Float 128-bit
VEXTRACTF128 xmm1/m128, ymm2, imm8
Extracts 128-bits from YMM register.
Details
Extracts a 128-bit float vector from a 256-bit YMM register based on an immediate selector and stores it to an XMM register or 128-bit memory location. The immediate byte (bit 0) selects which 128-bit lane to extract (0=lower, 1=upper). No flags are affected; this is a data extraction and movement operation only.
Pseudocode Operation
imm_index ← imm8[0];
if (imm_index == 0) {
xmm1/m128[0:127] ← ymm2[0:127];
} else {
xmm1/m128[0:127] ← ymm2[128:255];
}
Example
VEXTRACTF128 xmm1/m128, ymm2, 3
Encoding
Binary Layout
VEX
+0
opcode
+3
ModRM
+4
Operands
-
dest
128-bit XMM SIMD register or Memory operand -
src1
256-bit YMM AVX register -
src2
8-bit signed immediate