1// RUN: llvm-mc -triple x86_64-unknown-unknown -mattr=+avxifma -x86-asm-syntax=intel -output-asm-variant=1 --show-encoding %s | FileCheck %s 2 3// CHECK: {vex} vpmadd52huq ymm12, ymm13, ymm14 4// CHECK: encoding: [0xc4,0x42,0x95,0xb5,0xe6] 5 {vex} vpmadd52huq ymm12, ymm13, ymm14 6 7// CHECK: {vex} vpmadd52huq xmm12, xmm13, xmm14 8// CHECK: encoding: [0xc4,0x42,0x91,0xb5,0xe6] 9 {vex} vpmadd52huq xmm12, xmm13, xmm14 10 11// CHECK: {vex} vpmadd52huq ymm12, ymm13, ymmword ptr [rbp + 8*r14 + 268435456] 12// CHECK: encoding: [0xc4,0x22,0x95,0xb5,0xa4,0xf5,0x00,0x00,0x00,0x10] 13 {vex} vpmadd52huq ymm12, ymm13, ymmword ptr [rbp + 8*r14 + 268435456] 14 15// CHECK: {vex} vpmadd52huq ymm12, ymm13, ymmword ptr [r8 + 4*rax + 291] 16// CHECK: encoding: [0xc4,0x42,0x95,0xb5,0xa4,0x80,0x23,0x01,0x00,0x00] 17 {vex} vpmadd52huq ymm12, ymm13, ymmword ptr [r8 + 4*rax + 291] 18 19// CHECK: {vex} vpmadd52huq ymm12, ymm13, ymmword ptr [rip] 20// CHECK: encoding: [0xc4,0x62,0x95,0xb5,0x25,0x00,0x00,0x00,0x00] 21 {vex} vpmadd52huq ymm12, ymm13, ymmword ptr [rip] 22 23// CHECK: {vex} vpmadd52huq ymm12, ymm13, ymmword ptr [2*rbp - 1024] 24// CHECK: encoding: [0xc4,0x62,0x95,0xb5,0x24,0x6d,0x00,0xfc,0xff,0xff] 25 {vex} vpmadd52huq ymm12, ymm13, ymmword ptr [2*rbp - 1024] 26 27// CHECK: {vex} vpmadd52huq ymm12, ymm13, ymmword ptr [rcx + 4064] 28// CHECK: encoding: [0xc4,0x62,0x95,0xb5,0xa1,0xe0,0x0f,0x00,0x00] 29 {vex} vpmadd52huq ymm12, ymm13, ymmword ptr [rcx + 4064] 30 31// CHECK: {vex} vpmadd52huq ymm12, ymm13, ymmword ptr [rdx - 4096] 32// CHECK: encoding: [0xc4,0x62,0x95,0xb5,0xa2,0x00,0xf0,0xff,0xff] 33 {vex} vpmadd52huq ymm12, ymm13, ymmword ptr [rdx - 4096] 34 35// CHECK: {vex} vpmadd52huq xmm12, xmm13, xmmword ptr [rbp + 8*r14 + 268435456] 36// CHECK: encoding: [0xc4,0x22,0x91,0xb5,0xa4,0xf5,0x00,0x00,0x00,0x10] 37 {vex} vpmadd52huq xmm12, xmm13, xmmword ptr [rbp + 8*r14 + 268435456] 38 39// CHECK: {vex} vpmadd52huq xmm12, xmm13, xmmword ptr [r8 + 4*rax + 291] 40// CHECK: encoding: [0xc4,0x42,0x91,0xb5,0xa4,0x80,0x23,0x01,0x00,0x00] 41 {vex} vpmadd52huq xmm12, xmm13, xmmword ptr [r8 + 4*rax + 291] 42 43// CHECK: {vex} vpmadd52huq xmm12, xmm13, xmmword ptr [rip] 44// CHECK: encoding: [0xc4,0x62,0x91,0xb5,0x25,0x00,0x00,0x00,0x00] 45 {vex} vpmadd52huq xmm12, xmm13, xmmword ptr [rip] 46 47// CHECK: {vex} vpmadd52huq xmm12, xmm13, xmmword ptr [2*rbp - 512] 48// CHECK: encoding: [0xc4,0x62,0x91,0xb5,0x24,0x6d,0x00,0xfe,0xff,0xff] 49 {vex} vpmadd52huq xmm12, xmm13, xmmword ptr [2*rbp - 512] 50 51// CHECK: {vex} vpmadd52huq xmm12, xmm13, xmmword ptr [rcx + 2032] 52// CHECK: encoding: [0xc4,0x62,0x91,0xb5,0xa1,0xf0,0x07,0x00,0x00] 53 {vex} vpmadd52huq xmm12, xmm13, xmmword ptr [rcx + 2032] 54 55// CHECK: {vex} vpmadd52huq xmm12, xmm13, xmmword ptr [rdx - 2048] 56// CHECK: encoding: [0xc4,0x62,0x91,0xb5,0xa2,0x00,0xf8,0xff,0xff] 57 {vex} vpmadd52huq xmm12, xmm13, xmmword ptr [rdx - 2048] 58 59// CHECK: {vex} vpmadd52luq ymm12, ymm13, ymm14 60// CHECK: encoding: [0xc4,0x42,0x95,0xb4,0xe6] 61 {vex} vpmadd52luq ymm12, ymm13, ymm14 62 63// CHECK: {vex} vpmadd52luq xmm12, xmm13, xmm14 64// CHECK: encoding: [0xc4,0x42,0x91,0xb4,0xe6] 65 {vex} vpmadd52luq xmm12, xmm13, xmm14 66 67// CHECK: {vex} vpmadd52luq ymm12, ymm13, ymmword ptr [rbp + 8*r14 + 268435456] 68// CHECK: encoding: [0xc4,0x22,0x95,0xb4,0xa4,0xf5,0x00,0x00,0x00,0x10] 69 {vex} vpmadd52luq ymm12, ymm13, ymmword ptr [rbp + 8*r14 + 268435456] 70 71// CHECK: {vex} vpmadd52luq ymm12, ymm13, ymmword ptr [r8 + 4*rax + 291] 72// CHECK: encoding: [0xc4,0x42,0x95,0xb4,0xa4,0x80,0x23,0x01,0x00,0x00] 73 {vex} vpmadd52luq ymm12, ymm13, ymmword ptr [r8 + 4*rax + 291] 74 75// CHECK: {vex} vpmadd52luq ymm12, ymm13, ymmword ptr [rip] 76// CHECK: encoding: [0xc4,0x62,0x95,0xb4,0x25,0x00,0x00,0x00,0x00] 77 {vex} vpmadd52luq ymm12, ymm13, ymmword ptr [rip] 78 79// CHECK: {vex} vpmadd52luq ymm12, ymm13, ymmword ptr [2*rbp - 1024] 80// CHECK: encoding: [0xc4,0x62,0x95,0xb4,0x24,0x6d,0x00,0xfc,0xff,0xff] 81 {vex} vpmadd52luq ymm12, ymm13, ymmword ptr [2*rbp - 1024] 82 83// CHECK: {vex} vpmadd52luq ymm12, ymm13, ymmword ptr [rcx + 4064] 84// CHECK: encoding: [0xc4,0x62,0x95,0xb4,0xa1,0xe0,0x0f,0x00,0x00] 85 {vex} vpmadd52luq ymm12, ymm13, ymmword ptr [rcx + 4064] 86 87// CHECK: {vex} vpmadd52luq ymm12, ymm13, ymmword ptr [rdx - 4096] 88// CHECK: encoding: [0xc4,0x62,0x95,0xb4,0xa2,0x00,0xf0,0xff,0xff] 89 {vex} vpmadd52luq ymm12, ymm13, ymmword ptr [rdx - 4096] 90 91// CHECK: {vex} vpmadd52luq xmm12, xmm13, xmmword ptr [rbp + 8*r14 + 268435456] 92// CHECK: encoding: [0xc4,0x22,0x91,0xb4,0xa4,0xf5,0x00,0x00,0x00,0x10] 93 {vex} vpmadd52luq xmm12, xmm13, xmmword ptr [rbp + 8*r14 + 268435456] 94 95// CHECK: {vex} vpmadd52luq xmm12, xmm13, xmmword ptr [r8 + 4*rax + 291] 96// CHECK: encoding: [0xc4,0x42,0x91,0xb4,0xa4,0x80,0x23,0x01,0x00,0x00] 97 {vex} vpmadd52luq xmm12, xmm13, xmmword ptr [r8 + 4*rax + 291] 98 99// CHECK: {vex} vpmadd52luq xmm12, xmm13, xmmword ptr [rip] 100// CHECK: encoding: [0xc4,0x62,0x91,0xb4,0x25,0x00,0x00,0x00,0x00] 101 {vex} vpmadd52luq xmm12, xmm13, xmmword ptr [rip] 102 103// CHECK: {vex} vpmadd52luq xmm12, xmm13, xmmword ptr [2*rbp - 512] 104// CHECK: encoding: [0xc4,0x62,0x91,0xb4,0x24,0x6d,0x00,0xfe,0xff,0xff] 105 {vex} vpmadd52luq xmm12, xmm13, xmmword ptr [2*rbp - 512] 106 107// CHECK: {vex} vpmadd52luq xmm12, xmm13, xmmword ptr [rcx + 2032] 108// CHECK: encoding: [0xc4,0x62,0x91,0xb4,0xa1,0xf0,0x07,0x00,0x00] 109 {vex} vpmadd52luq xmm12, xmm13, xmmword ptr [rcx + 2032] 110 111// CHECK: {vex} vpmadd52luq xmm12, xmm13, xmmword ptr [rdx - 2048] 112// CHECK: encoding: [0xc4,0x62,0x91,0xb4,0xa2,0x00,0xf8,0xff,0xff] 113 {vex} vpmadd52luq xmm12, xmm13, xmmword ptr [rdx - 2048] 114 115