Skip to content

VPCMPEQD:x86 compare向量指令

VPCMPEQD 属于 AVX2 的 compare 类 SIMD 指令。传统、VEX 与 EVEX 形式如共享该助记符,会集中列在本页。

操作码
Intel SDM · 见各编码形式
指令集
AVX2 / AVX512F
英文全称
VPCMPEQD
参考资料
Intel SDM
页码
01VPCMPEQD02k, zmm, zmm
01
指令助记符VPCMPEQDmnemonic

VPCMPEQD 的 AVX2 编码。

02
操作数k, zmm, zmmdestination

Intel 官方资料列出的一个操作数形式;全部形式见下表。

VPCMPEQD · REGISTER OPERATIONX86 · COMPARE
元素数量向量宽度 ÷ 元素宽度16
vs2 · zmm1第一来源
zmm1[511:0]
vs2[15]1632 bits
vs2[14]1532 bits
vs2[13]1432 bits
vs2[12]1332 bits
vs2[11]1232 bits
vs2[10]1132 bits
vs2[9]1032 bits
vs2[8]932 bits
vs2[7]832 bits
vs2[6]732 bits
vs2[5]632 bits
vs2[4]532 bits
vs2[3]432 bits
vs2[2]332 bits
vs2[1]232 bits
vs2[0]132 bits
vs1 · zmm2第二来源
zmm2[511:0]
vs1[15]3232 bits
vs1[14]3132 bits
vs1[13]3032 bits
vs1[12]2932 bits
vs1[11]2832 bits
vs1[10]2732 bits
vs1[9]2632 bits
vs1[8]2532 bits
vs1[7]2432 bits
vs1[6]2332 bits
vs1[5]2232 bits
vs1[4]2132 bits
vs1[3]2032 bits
vs1[2]1932 bits
vs1[1]1832 bits
vs1[0]1732 bits
vd · zmm0(结果)compare
zmm0[511:0]
vd[15]ALL-1compare
vd[14]0compare
vd[13]ALL-1compare
vd[12]0compare
vd[11]ALL-1compare
vd[10]0compare
vd[9]ALL-1compare
vd[8]0compare
vd[7]ALL-1compare
vd[6]0compare
vd[5]ALL-1compare
vd[4]0compare
vd[3]ALL-1compare
vd[2]0compare
vd[1]ALL-1compare
vd[0]0compare
每个圆球代表一个完整元素强调背景:目标写入高索引在左、低索引在右

指令形式

语法说明
VPCMPEQD k {k}, zmm, zmmIntel 官方操作数形式
VPCMPEQD k, zmm, zmmIntel 官方操作数形式
VPCMPEQD ymm, ymm, ymmIntel 官方操作数形式

操作语义

操作数按 Intel SDM 中该编码规定的 packed 元素或低位标量解释。元素 0 位于向量寄存器最低有效位;128 位 lane 内行为与跨 lane 行为以具体形式为准。

注意点

修改的寄存器

显式目标寄存器或内存被写入,来源保持不变。传统双操作数形式可能覆盖第一来源;VEX/EVEX 非破坏性形式使用独立目标,并按编码规则清零有效宽度以上的目标位。EVEX 写掩码支持合并与 {z} 清零。

内存对齐

普通算术和转换内存来源通常没有额外自然对齐要求;名称为 aligned move 的形式以及部分非临时存储必须按 16、32 或 64 字节操作数宽度对齐。地址始终必须可访问完整操作数。

标志位与异常

纯整数或数据移动形式通常不修改 MXCSR。 只有 Intel SDM 明确规定的比较、测试或字符串形式修改 EFLAGS/RFLAGS;其他形式不修改整数标志。

示例形式

asm
vpcmpeqd k, zmm, zmm

参考

SIGNAL MAINTAINED · BUILT FROM MARKDOWN