VPCOMPRESSB/VCOMPRESSW —Store Sparse Packed Byte/Word Integer Values into Dense Memory/Register Instruction Operand EncodingDescriptionCompress (stores) up to 64 byte values or 32 word values from the source operand (second operand) to the desti-nation operand (first operand), based on the active elements determined by the writemask operand. Note: EVEX.vvvv is reserved and must be 1111b otherwise instructions will #UD.Moves up to 512 bits of packed byte values from the source operand (second operand) to the destination operand (first operand). This instruction is used to store partial contents of a vector register into a byte vector or single memory location using the active elements in operand writemask.Memory destination version: Only the contiguous vector is written to the destination memory location. EVEX.z must be zero.Register destination version: If the vector length of the contiguous vector is less than that of the input vector in the source operand, the upper bits of the destination register are unmodified if EVEX.z is not set, otherwise the upper bits are zeroed.This instruction supports memory fault suppression.Opcode/InstructionOp/En64/32 bit Mode SupportCPUID Feature FlagDescriptionEVEX.128.66.0F38.W0 63 /rVPCOMPRESSB m128{k1}, xmm1AV/VAVX512_VBMI2AVX512VLCompress up to 128 bits of packed byte values from xmm1 to m128 with writemask k1.EVEX.128.66.0F38.W0 63 /rVPCOMPRESSB xmm1{k1}{z}, xmm2BV/VAVX512_VBMI2AVX512VLCompress up to 128 bits of packed byte values from xmm2 to xmm1 with writemask k1.EVEX.256.66.0F38.W0 63 /rVPCOMPRESSB m256{k1}, ymm1AV/VAVX512_VBMI2AVX512VLCompress up to 256 bits of packed byte values from ymm1 to m256 with writemask k1.EVEX.256.66.0F38.W0 63 /rVPCOMPRESSB ymm1{k1}{z}, ymm2BV/VAVX512_VBMI2AVX512VLCompress up to 256 bits of packed byte values from ymm2 to ymm1 with writemask k1.EVEX.512.66.0F38.W0 63 /rVPCOMPRESSB m512{k1}, zmm1AV/VAVX512_VBMI2Compress up to 512 bits of packed byte values from zmm1 to m512 with writemask k1.EVEX.512.66.0F38.W0 63 /rVPCOMPRESSB zmm1{k1}{z}, zmm2BV/VAVX512_VBMI2Compress up to 512 bits of packed byte values from zmm2 to zmm1 with writemask k1.EVEX.128.66.0F38.W1 63 /rVPCOMPRESSW m128{k1}, xmm1AV/VAVX512_VBMI2AVX512VLCompress up to 128 bits of packed word values from xmm1 to m128 with writemask k1.EVEX.128.66.0F38.W1 63 /rVPCOMPRESSW xmm1{k1}{z}, xmm2BV/VAVX512_VBMI2AVX512VLCompress up to 128 bits of packed word values from xmm2 to xmm1 with writemask k1.EVEX.256.66.0F38.W1 63 /rVPCOMPRESSW m256{k1}, ymm1AV/VAVX512_VBMI2AVX512VLCompress up to 256 bits of packed word values from ymm1 to m256 with writemask k1.EVEX.256.66.0F38.W1 63 /rVPCOMPRESSW ymm1{k1}{z}, ymm2BV/VAVX512_VBMI2AVX512VLCompress up to 256 bits of packed word values from ymm2 to ymm1 with writemask k1.EVEX.512.66.0F38.W1 63 /rVPCOMPRESSW m512{k1}, zmm1AV/VAVX512_VBMI2Compress up to 512 bits of packed word values from zmm1 to m512 with writemask k1.EVEX.512.66.0F38.W1 63 /rVPCOMPRESSW zmm1{k1}{z}, zmm2BV/VAVX512_VBMI2Compress up to 512 bits of packed word values from zmm2 to zmm1 with writemask k1.Op/EnTupleOperand 1Operand 2Operand 3Operand 4ATuple1 ScalarModRM:r/m (w)ModRM:reg (r)NANABNAModRM:r/m (w)ModRM:reg (r)NANA
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.