llvm-project/llvm/test/MC/X86/intel-syntax-x86-64-avx.s

162 lines
5.8 KiB
ArmAsm

// RUN: llvm-mc -triple x86_64-unknown-unknown -x86-asm-syntax=intel -output-asm-variant=1 --show-encoding %s | FileCheck %s
// CHECK: vgatherdpd xmm2, xmmword ptr [rdi + 2*xmm1], xmm0
// CHECK: encoding: [0xc4,0xe2,0xf9,0x92,0x14,0x4f]
vgatherdpd xmm2, xmmword ptr [rdi + 2*xmm1], xmm0
// CHECK: vgatherqpd xmm2, xmmword ptr [rdi + 2*xmm1], xmm0
// CHECK: encoding: [0xc4,0xe2,0xf9,0x93,0x14,0x4f]
vgatherqpd xmm2, xmmword ptr [rdi + 2*xmm1], xmm0
// CHECK: vgatherdpd ymm2, ymmword ptr [rdi + 2*xmm1], ymm0
// CHECK: encoding: [0xc4,0xe2,0xfd,0x92,0x14,0x4f]
vgatherdpd ymm2, ymmword ptr [rdi + 2*xmm1], ymm0
// CHECK: vgatherqpd ymm2, ymmword ptr [rdi + 2*ymm1], ymm0
// CHECK: encoding: [0xc4,0xe2,0xfd,0x93,0x14,0x4f]
vgatherqpd ymm2, ymmword ptr [rdi + 2*ymm1], ymm0
// CHECK: vgatherdps xmm10, xmmword ptr [r15 + 2*xmm9], xmm8
// CHECK: encoding: [0xc4,0x02,0x39,0x92,0x14,0x4f]
vgatherdps xmm10, xmmword ptr [r15 + 2*xmm9], xmm8
// CHECK: vgatherqps xmm10, qword ptr [r15 + 2*xmm9], xmm8
// CHECK: encoding: [0xc4,0x02,0x39,0x93,0x14,0x4f]
vgatherqps xmm10, qword ptr [r15 + 2*xmm9], xmm8
// CHECK: vgatherdps ymm10, ymmword ptr [r15 + 2*ymm9], ymm8
// CHECK: encoding: [0xc4,0x02,0x3d,0x92,0x14,0x4f]
vgatherdps ymm10, ymmword ptr [r15 + 2*ymm9], ymm8
// CHECK: vgatherqps xmm10, xmmword ptr [r15 + 2*ymm9], xmm8
// CHECK: encoding: [0xc4,0x02,0x3d,0x93,0x14,0x4f]
vgatherqps xmm10, xmmword ptr [r15 + 2*ymm9], xmm8
// CHECK: vpgatherdq xmm2, xmmword ptr [rdi + 2*xmm1], xmm0
// CHECK: encoding: [0xc4,0xe2,0xf9,0x90,0x14,0x4f]
vpgatherdq xmm2, xmmword ptr [rdi + 2*xmm1], xmm0
// CHECK: vpgatherqq xmm2, xmmword ptr [rdi + 2*xmm1], xmm0
// CHECK: encoding: [0xc4,0xe2,0xf9,0x91,0x14,0x4f]
vpgatherqq xmm2, xmmword ptr [rdi + 2*xmm1], xmm0
// CHECK: vpgatherdq ymm2, ymmword ptr [rdi + 2*xmm1], ymm0
// CHECK: encoding: [0xc4,0xe2,0xfd,0x90,0x14,0x4f]
vpgatherdq ymm2, ymmword ptr [rdi + 2*xmm1], ymm0
// CHECK: vpgatherqq ymm2, ymmword ptr [rdi + 2*ymm1], ymm0
// CHECK: encoding: [0xc4,0xe2,0xfd,0x91,0x14,0x4f]
vpgatherqq ymm2, ymmword ptr [rdi + 2*ymm1], ymm0
// CHECK: vpgatherdd xmm10, xmmword ptr [r15 + 2*xmm9], xmm8
// CHECK: encoding: [0xc4,0x02,0x39,0x90,0x14,0x4f]
vpgatherdd xmm10, xmmword ptr [r15 + 2*xmm9], xmm8
// CHECK: vpgatherqd xmm10, qword ptr [r15 + 2*xmm9], xmm8
// CHECK: encoding: [0xc4,0x02,0x39,0x91,0x14,0x4f]
vpgatherqd xmm10, qword ptr [r15 + 2*xmm9], xmm8
// CHECK: vpgatherdd ymm10, ymmword ptr [r15 + 2*ymm9], ymm8
// CHECK: encoding: [0xc4,0x02,0x3d,0x90,0x14,0x4f]
vpgatherdd ymm10, ymmword ptr [r15 + 2*ymm9], ymm8
// CHECK: vpgatherqd xmm10, xmmword ptr [r15 + 2*ymm9], xmm8
// CHECK: encoding: [0xc4,0x02,0x3d,0x91,0x14,0x4f]
vpgatherqd xmm10, xmmword ptr [r15 + 2*ymm9], xmm8
// CHECK: vcvtpd2ps xmm0, xmm15
// CHECK: encoding: [0xc4,0xc1,0x79,0x5a,0xc7]
vcvtpd2ps xmm0, xmm15
// CHECK: vcvtpd2ps xmm0, xmm15
// CHECK: encoding: [0xc4,0xc1,0x79,0x5a,0xc7]
vcvtpd2psx xmm0, xmm15
// CHECK: vcvtpd2ps xmm0, xmmword ptr [rax]
// CHECK: encoding: [0xc5,0xf9,0x5a,0x00]
vcvtpd2ps xmm0, xmmword ptr [rax]
// CHECK: vcvtpd2ps xmm0, xmmword ptr [rax]
// CHECK: encoding: [0xc5,0xf9,0x5a,0x00]
vcvtpd2psx xmm0, xmmword ptr [rax]
// CHECK: vcvtpd2ps xmm0, ymm15
// CHECK: encoding: [0xc4,0xc1,0x7d,0x5a,0xc7]
vcvtpd2ps xmm0, ymm15
// CHECK: vcvtpd2ps xmm0, ymm15
// CHECK: encoding: [0xc4,0xc1,0x7d,0x5a,0xc7]
vcvtpd2psy xmm0, ymm15
// CHECK: vcvtpd2ps xmm0, ymmword ptr [rax]
// CHECK: encoding: [0xc5,0xfd,0x5a,0x00]
vcvtpd2ps xmm0, ymmword ptr [rax]
// CHECK: vcvtpd2ps xmm0, ymmword ptr [rax]
// CHECK: encoding: [0xc5,0xfd,0x5a,0x00]
vcvtpd2psy xmm0, ymmword ptr [rax]
// CHECK: vcvtpd2dq xmm0, xmm15
// CHECK: encoding: [0xc4,0xc1,0x7b,0xe6,0xc7]
vcvtpd2dq xmm0, xmm15
// CHECK: vcvtpd2dq xmm0, xmm15
// CHECK: encoding: [0xc4,0xc1,0x7b,0xe6,0xc7]
vcvtpd2dqx xmm0, xmm15
// CHECK: vcvtpd2dq xmm0, xmmword ptr [rax]
// CHECK: encoding: [0xc5,0xfb,0xe6,0x00]
vcvtpd2dq xmm0, xmmword ptr [rax]
// CHECK: vcvtpd2dq xmm0, xmmword ptr [rax]
// CHECK: encoding: [0xc5,0xfb,0xe6,0x00]
vcvtpd2dqx xmm0, xmmword ptr [rax]
// CHECK: vcvtpd2dq xmm0, ymm15
// CHECK: encoding: [0xc4,0xc1,0x7f,0xe6,0xc7]
vcvtpd2dq xmm0, ymm15
// CHECK: vcvtpd2dq xmm0, ymm15
// CHECK: encoding: [0xc4,0xc1,0x7f,0xe6,0xc7]
vcvtpd2dqy xmm0, ymm15
// CHECK: vcvtpd2dq xmm0, ymmword ptr [rax]
// CHECK: encoding: [0xc5,0xff,0xe6,0x00]
vcvtpd2dq xmm0, ymmword ptr [rax]
// CHECK: vcvtpd2dq xmm0, ymmword ptr [rax]
// CHECK: encoding: [0xc5,0xff,0xe6,0x00]
vcvtpd2dqy xmm0, ymmword ptr [rax]
// CHECK: vcvttpd2dq xmm0, xmm15
// CHECK: encoding: [0xc4,0xc1,0x79,0xe6,0xc7]
vcvttpd2dq xmm0, xmm15
// CHECK: vcvttpd2dq xmm0, xmm15
// CHECK: encoding: [0xc4,0xc1,0x79,0xe6,0xc7]
vcvttpd2dqx xmm0, xmm15
// CHECK: vcvttpd2dq xmm0, xmmword ptr [rax]
// CHECK: encoding: [0xc5,0xf9,0xe6,0x00]
vcvttpd2dq xmm0, xmmword ptr [rax]
// CHECK: vcvttpd2dq xmm0, xmmword ptr [rax]
// CHECK: encoding: [0xc5,0xf9,0xe6,0x00]
vcvttpd2dqx xmm0, xmmword ptr [rax]
// CHECK: vcvttpd2dq xmm0, ymm15
// CHECK: encoding: [0xc4,0xc1,0x7d,0xe6,0xc7]
vcvttpd2dq xmm0, ymm15
// CHECK: vcvttpd2dq xmm0, ymm15
// CHECK: encoding: [0xc4,0xc1,0x7d,0xe6,0xc7]
vcvttpd2dqy xmm0, ymm15
// CHECK: vcvttpd2dq xmm0, ymmword ptr [rax]
// CHECK: encoding: [0xc5,0xfd,0xe6,0x00]
vcvttpd2dq xmm0, ymmword ptr [rax]
// CHECK: vcvttpd2dq xmm0, ymmword ptr [rax]
// CHECK: encoding: [0xc5,0xfd,0xe6,0x00]
vcvttpd2dqy xmm0, ymmword ptr [rax]