PEXTRW—Extract WordInstruction Operand EncodingDescriptionCopies the word in the source operand (second operand) specified by the count operand (third operand) to the destination operand (first operand). The source operand can be an MMX technology register or an XMM register. The destination operand can be the low word of a general-purpose register or a 16-bit memory address. The count operand is an 8-bit immediate. When specifying a word location in an MMX technology register, the 2 least-signifi-cant bits of the count operand specify the location; for an XMM register, the 3 least-significant bits specify the loca-tion. The content of the destination register above bit 16 is cleared (set to all 0s).Opcode/InstructionOp/ En64/32 bit Mode SupportCPUID Feature FlagDescriptionNP 0F C5 /r ib1PEXTRW reg, mm, imm8 AV/VSSEExtract the word specified by imm8 from mmand move it to reg, bits 15-0. The upper bits of r32 or r64 is zeroed.66 0F C5 /r ibPEXTRW reg, xmm, imm8 AV/VSSE2Extract the word specified by imm8 from xmmand move it to reg, bits 15-0. The upper bits of r32 or r64 is zeroed.66 0F 3A 15/r ibPEXTRW reg/m16, xmm, imm8BV/VSSE4_1Extract the word specified by imm8 from xmmand copy it to lowest 16 bits of reg or m16. Zero-extend the result in the destination, r32 or r64.VEX.128.66.0F.W0 C5 /r ibVPEXTRW reg, xmm1, imm8AV2/VAVXExtract the word specified by imm8 from xmm1 and move it to reg, bits 15:0. Zero-extend the result. The upper bits of r64/r32 is filled with zeros.VEX.128.66.0F3A.W0 15 /r ibVPEXTRW reg/m16, xmm2, imm8BV/VAVXExtract a word integer value from xmm2 at the source word offset specified by imm8 into reg or m16. The upper bits of r64/r32 is filled with zeros.EVEX.128.66.0F.WIG C5 /r ibVPEXTRW reg, xmm1, imm8AV/VAVX512BWExtract the word specified by imm8 from xmm1 and move it to reg, bits 15:0. Zero-extend the result. The upper bits of r64/r32 is filled with zeros.EVEX.128.66.0F3A.WIG 15 /r ibVPEXTRW reg/m16, xmm2, imm8CV/VAVX512BWExtract a word integer value from xmm2 at the source word offset specified by imm8 into reg or m16. The upper bits of r64/r32 is filled with zeros.NOTES:1. See note in Section 2.4, “AVX and SSE Instruction Exception Specification” in the Intel® 64 and IA-32 Architectures Software Developer’s Manual, Volume 2A and Section 22.25.3, “Exception Conditions of Legacy SIMD Instructions Operating on MMX Registers” in the Intel® 64 and IA-32 Architectures Software Developer’s Manual, Volume 3A.2. In 64-bit mode, VEX.W1 is ignored for VPEXTRW (similar to legacy REX.W=1 prefix in PEXTRW).Op/EnTuple TypeOperand 1Operand 2Operand 3Operand 4ANAModRM:reg (w)ModRM:r/m (r)imm8NABNAModRM:r/m (w)ModRM:reg (r)imm8NACTuple1 ScalarModRM:r/m (w)ModRM:reg (r)imm8NA
This UNOFFICIAL reference was generated from the official Intel® 64 and IA-32 Architectures Software Developer’s Manual by a dumb script. There is no guarantee that some parts aren't mangled or broken and is distributed WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.