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