mirror of
https://github.com/netwide-assembler/nasm.git
synced 2024-11-27 08:10:07 +08:00
bae6b070ff
The VPCMP instructions are controlled by an immediate byte, but there is also a set of SSE-derived legacy opcodes for VPCMPEQ and VPCMPGT. For the specific cases of VPCMPEQ and VPCMPGT, prefer those opcodes since they are one byte shorter. Reported-by: ig <glucksmann@avast.com> Signed-off-by: H. Peter Anvin (Intel) <hpa@zytor.com>
28 lines
663 B
NASM
28 lines
663 B
NASM
bits 64
|
|
vpcmpeqb k2{k2},zmm0,zmm1
|
|
vpcmpgtb k2{k2},zmm0,zmm1
|
|
vpcmpeqw k2{k2},zmm0,zmm1
|
|
vpcmpgtw k2{k2},zmm0,zmm1
|
|
vpcmpeqd k2{k2},zmm0,zmm1
|
|
vpcmpgtd k2{k2},zmm0,zmm1
|
|
vpcmpeqq k2{k2},zmm0,zmm1
|
|
vpcmpgtq k2{k2},zmm0,zmm1
|
|
|
|
vpcmpb k2{k2},zmm0,zmm1,0
|
|
vpcmpb k2{k2},zmm0,zmm1,6
|
|
vpcmpw k2{k2},zmm0,zmm1,0
|
|
vpcmpw k2{k2},zmm0,zmm1,6
|
|
vpcmpd k2{k2},zmm0,zmm1,0
|
|
vpcmpd k2{k2},zmm0,zmm1,6
|
|
vpcmpq k2{k2},zmm0,zmm1,0
|
|
vpcmpq k2{k2},zmm0,zmm1,6
|
|
|
|
vpcmpneqb k2{k2},zmm0,zmm1
|
|
vpcmpleb k2{k2},zmm0,zmm1
|
|
vpcmpneqw k2{k2},zmm0,zmm1
|
|
vpcmplew k2{k2},zmm0,zmm1
|
|
vpcmpneqd k2{k2},zmm0,zmm1
|
|
vpcmpled k2{k2},zmm0,zmm1
|
|
vpcmpneqq k2{k2},zmm0,zmm1
|
|
vpcmpleq k2{k2},zmm0,zmm1
|