243 lines · plain
1// RUN: llvm-mc -triple x86_64-unknown-unknown -mattr=+avxvnniint8 -x86-asm-syntax=intel -output-asm-variant=1 --show-encoding %s | FileCheck %s2 3// CHECK: vpdpbssd ymm12, ymm13, ymm144// CHECK: encoding: [0xc4,0x42,0x17,0x50,0xe6]5 vpdpbssd ymm12, ymm13, ymm146 7// CHECK: vpdpbssd xmm12, xmm13, xmm148// CHECK: encoding: [0xc4,0x42,0x13,0x50,0xe6]9 vpdpbssd xmm12, xmm13, xmm1410 11// CHECK: vpdpbssd ymm12, ymm13, ymmword ptr [rbp + 8*r14 + 268435456]12// CHECK: encoding: [0xc4,0x22,0x17,0x50,0xa4,0xf5,0x00,0x00,0x00,0x10]13 vpdpbssd ymm12, ymm13, ymmword ptr [rbp + 8*r14 + 268435456]14 15// CHECK: vpdpbssd ymm12, ymm13, ymmword ptr [r8 + 4*rax + 291]16// CHECK: encoding: [0xc4,0x42,0x17,0x50,0xa4,0x80,0x23,0x01,0x00,0x00]17 vpdpbssd ymm12, ymm13, ymmword ptr [r8 + 4*rax + 291]18 19// CHECK: vpdpbssd ymm12, ymm13, ymmword ptr [rip]20// CHECK: encoding: [0xc4,0x62,0x17,0x50,0x25,0x00,0x00,0x00,0x00]21 vpdpbssd ymm12, ymm13, ymmword ptr [rip]22 23// CHECK: vpdpbssd ymm12, ymm13, ymmword ptr [2*rbp - 1024]24// CHECK: encoding: [0xc4,0x62,0x17,0x50,0x24,0x6d,0x00,0xfc,0xff,0xff]25 vpdpbssd ymm12, ymm13, ymmword ptr [2*rbp - 1024]26 27// CHECK: vpdpbssd xmm12, xmm13, xmmword ptr [rbp + 8*r14 + 268435456]28// CHECK: encoding: [0xc4,0x22,0x13,0x50,0xa4,0xf5,0x00,0x00,0x00,0x10]29 vpdpbssd xmm12, xmm13, xmmword ptr [rbp + 8*r14 + 268435456]30 31// CHECK: vpdpbssd xmm12, xmm13, xmmword ptr [r8 + 4*rax + 291]32// CHECK: encoding: [0xc4,0x42,0x13,0x50,0xa4,0x80,0x23,0x01,0x00,0x00]33 vpdpbssd xmm12, xmm13, xmmword ptr [r8 + 4*rax + 291]34 35// CHECK: vpdpbssd xmm12, xmm13, xmmword ptr [rip]36// CHECK: encoding: [0xc4,0x62,0x13,0x50,0x25,0x00,0x00,0x00,0x00]37 vpdpbssd xmm12, xmm13, xmmword ptr [rip]38 39// CHECK: vpdpbssd xmm12, xmm13, xmmword ptr [2*rbp - 512]40// CHECK: encoding: [0xc4,0x62,0x13,0x50,0x24,0x6d,0x00,0xfe,0xff,0xff]41 vpdpbssd xmm12, xmm13, xmmword ptr [2*rbp - 512]42 43// CHECK: vpdpbssds ymm12, ymm13, ymm1444// CHECK: encoding: [0xc4,0x42,0x17,0x51,0xe6]45 vpdpbssds ymm12, ymm13, ymm1446 47// CHECK: vpdpbssds xmm12, xmm13, xmm1448// CHECK: encoding: [0xc4,0x42,0x13,0x51,0xe6]49 vpdpbssds xmm12, xmm13, xmm1450 51// CHECK: vpdpbssds ymm12, ymm13, ymmword ptr [rbp + 8*r14 + 268435456]52// CHECK: encoding: [0xc4,0x22,0x17,0x51,0xa4,0xf5,0x00,0x00,0x00,0x10]53 vpdpbssds ymm12, ymm13, ymmword ptr [rbp + 8*r14 + 268435456]54 55// CHECK: vpdpbssds ymm12, ymm13, ymmword ptr [r8 + 4*rax + 291]56// CHECK: encoding: [0xc4,0x42,0x17,0x51,0xa4,0x80,0x23,0x01,0x00,0x00]57 vpdpbssds ymm12, ymm13, ymmword ptr [r8 + 4*rax + 291]58 59// CHECK: vpdpbssds ymm12, ymm13, ymmword ptr [rip]60// CHECK: encoding: [0xc4,0x62,0x17,0x51,0x25,0x00,0x00,0x00,0x00]61 vpdpbssds ymm12, ymm13, ymmword ptr [rip]62 63// CHECK: vpdpbssds ymm12, ymm13, ymmword ptr [2*rbp - 1024]64// CHECK: encoding: [0xc4,0x62,0x17,0x51,0x24,0x6d,0x00,0xfc,0xff,0xff]65 vpdpbssds ymm12, ymm13, ymmword ptr [2*rbp - 1024]66 67// CHECK: vpdpbssds xmm12, xmm13, xmmword ptr [rbp + 8*r14 + 268435456]68// CHECK: encoding: [0xc4,0x22,0x13,0x51,0xa4,0xf5,0x00,0x00,0x00,0x10]69 vpdpbssds xmm12, xmm13, xmmword ptr [rbp + 8*r14 + 268435456]70 71// CHECK: vpdpbssds xmm12, xmm13, xmmword ptr [r8 + 4*rax + 291]72// CHECK: encoding: [0xc4,0x42,0x13,0x51,0xa4,0x80,0x23,0x01,0x00,0x00]73 vpdpbssds xmm12, xmm13, xmmword ptr [r8 + 4*rax + 291]74 75// CHECK: vpdpbssds xmm12, xmm13, xmmword ptr [rip]76// CHECK: encoding: [0xc4,0x62,0x13,0x51,0x25,0x00,0x00,0x00,0x00]77 vpdpbssds xmm12, xmm13, xmmword ptr [rip]78 79// CHECK: vpdpbssds xmm12, xmm13, xmmword ptr [2*rbp - 512]80// CHECK: encoding: [0xc4,0x62,0x13,0x51,0x24,0x6d,0x00,0xfe,0xff,0xff]81 vpdpbssds xmm12, xmm13, xmmword ptr [2*rbp - 512]82 83// CHECK: vpdpbsud ymm12, ymm13, ymm1484// CHECK: encoding: [0xc4,0x42,0x16,0x50,0xe6]85 vpdpbsud ymm12, ymm13, ymm1486 87// CHECK: vpdpbsud xmm12, xmm13, xmm1488// CHECK: encoding: [0xc4,0x42,0x12,0x50,0xe6]89 vpdpbsud xmm12, xmm13, xmm1490 91// CHECK: vpdpbsud ymm12, ymm13, ymmword ptr [rbp + 8*r14 + 268435456]92// CHECK: encoding: [0xc4,0x22,0x16,0x50,0xa4,0xf5,0x00,0x00,0x00,0x10]93 vpdpbsud ymm12, ymm13, ymmword ptr [rbp + 8*r14 + 268435456]94 95// CHECK: vpdpbsud ymm12, ymm13, ymmword ptr [r8 + 4*rax + 291]96// CHECK: encoding: [0xc4,0x42,0x16,0x50,0xa4,0x80,0x23,0x01,0x00,0x00]97 vpdpbsud ymm12, ymm13, ymmword ptr [r8 + 4*rax + 291]98 99// CHECK: vpdpbsud ymm12, ymm13, ymmword ptr [rip]100// CHECK: encoding: [0xc4,0x62,0x16,0x50,0x25,0x00,0x00,0x00,0x00]101 vpdpbsud ymm12, ymm13, ymmword ptr [rip]102 103// CHECK: vpdpbsud ymm12, ymm13, ymmword ptr [2*rbp - 1024]104// CHECK: encoding: [0xc4,0x62,0x16,0x50,0x24,0x6d,0x00,0xfc,0xff,0xff]105 vpdpbsud ymm12, ymm13, ymmword ptr [2*rbp - 1024]106 107// CHECK: vpdpbsud xmm12, xmm13, xmmword ptr [rbp + 8*r14 + 268435456]108// CHECK: encoding: [0xc4,0x22,0x12,0x50,0xa4,0xf5,0x00,0x00,0x00,0x10]109 vpdpbsud xmm12, xmm13, xmmword ptr [rbp + 8*r14 + 268435456]110 111// CHECK: vpdpbsud xmm12, xmm13, xmmword ptr [r8 + 4*rax + 291]112// CHECK: encoding: [0xc4,0x42,0x12,0x50,0xa4,0x80,0x23,0x01,0x00,0x00]113 vpdpbsud xmm12, xmm13, xmmword ptr [r8 + 4*rax + 291]114 115// CHECK: vpdpbsud xmm12, xmm13, xmmword ptr [rip]116// CHECK: encoding: [0xc4,0x62,0x12,0x50,0x25,0x00,0x00,0x00,0x00]117 vpdpbsud xmm12, xmm13, xmmword ptr [rip]118 119// CHECK: vpdpbsud xmm12, xmm13, xmmword ptr [2*rbp - 512]120// CHECK: encoding: [0xc4,0x62,0x12,0x50,0x24,0x6d,0x00,0xfe,0xff,0xff]121 vpdpbsud xmm12, xmm13, xmmword ptr [2*rbp - 512]122 123// CHECK: vpdpbsuds ymm12, ymm13, ymm14124// CHECK: encoding: [0xc4,0x42,0x16,0x51,0xe6]125 vpdpbsuds ymm12, ymm13, ymm14126 127// CHECK: vpdpbsuds xmm12, xmm13, xmm14128// CHECK: encoding: [0xc4,0x42,0x12,0x51,0xe6]129 vpdpbsuds xmm12, xmm13, xmm14130 131// CHECK: vpdpbsuds ymm12, ymm13, ymmword ptr [rbp + 8*r14 + 268435456]132// CHECK: encoding: [0xc4,0x22,0x16,0x51,0xa4,0xf5,0x00,0x00,0x00,0x10]133 vpdpbsuds ymm12, ymm13, ymmword ptr [rbp + 8*r14 + 268435456]134 135// CHECK: vpdpbsuds ymm12, ymm13, ymmword ptr [r8 + 4*rax + 291]136// CHECK: encoding: [0xc4,0x42,0x16,0x51,0xa4,0x80,0x23,0x01,0x00,0x00]137 vpdpbsuds ymm12, ymm13, ymmword ptr [r8 + 4*rax + 291]138 139// CHECK: vpdpbsuds ymm12, ymm13, ymmword ptr [rip]140// CHECK: encoding: [0xc4,0x62,0x16,0x51,0x25,0x00,0x00,0x00,0x00]141 vpdpbsuds ymm12, ymm13, ymmword ptr [rip]142 143// CHECK: vpdpbsuds ymm12, ymm13, ymmword ptr [2*rbp - 1024]144// CHECK: encoding: [0xc4,0x62,0x16,0x51,0x24,0x6d,0x00,0xfc,0xff,0xff]145 vpdpbsuds ymm12, ymm13, ymmword ptr [2*rbp - 1024]146 147// CHECK: vpdpbsuds xmm12, xmm13, xmmword ptr [rbp + 8*r14 + 268435456]148// CHECK: encoding: [0xc4,0x22,0x12,0x51,0xa4,0xf5,0x00,0x00,0x00,0x10]149 vpdpbsuds xmm12, xmm13, xmmword ptr [rbp + 8*r14 + 268435456]150 151// CHECK: vpdpbsuds xmm12, xmm13, xmmword ptr [r8 + 4*rax + 291]152// CHECK: encoding: [0xc4,0x42,0x12,0x51,0xa4,0x80,0x23,0x01,0x00,0x00]153 vpdpbsuds xmm12, xmm13, xmmword ptr [r8 + 4*rax + 291]154 155// CHECK: vpdpbsuds xmm12, xmm13, xmmword ptr [rip]156// CHECK: encoding: [0xc4,0x62,0x12,0x51,0x25,0x00,0x00,0x00,0x00]157 vpdpbsuds xmm12, xmm13, xmmword ptr [rip]158 159// CHECK: vpdpbsuds xmm12, xmm13, xmmword ptr [2*rbp - 512]160// CHECK: encoding: [0xc4,0x62,0x12,0x51,0x24,0x6d,0x00,0xfe,0xff,0xff]161 vpdpbsuds xmm12, xmm13, xmmword ptr [2*rbp - 512]162 163// CHECK: vpdpbuud ymm12, ymm13, ymm14164// CHECK: encoding: [0xc4,0x42,0x14,0x50,0xe6]165 vpdpbuud ymm12, ymm13, ymm14166 167// CHECK: vpdpbuud xmm12, xmm13, xmm14168// CHECK: encoding: [0xc4,0x42,0x10,0x50,0xe6]169 vpdpbuud xmm12, xmm13, xmm14170 171// CHECK: vpdpbuud ymm12, ymm13, ymmword ptr [rbp + 8*r14 + 268435456]172// CHECK: encoding: [0xc4,0x22,0x14,0x50,0xa4,0xf5,0x00,0x00,0x00,0x10]173 vpdpbuud ymm12, ymm13, ymmword ptr [rbp + 8*r14 + 268435456]174 175// CHECK: vpdpbuud ymm12, ymm13, ymmword ptr [r8 + 4*rax + 291]176// CHECK: encoding: [0xc4,0x42,0x14,0x50,0xa4,0x80,0x23,0x01,0x00,0x00]177 vpdpbuud ymm12, ymm13, ymmword ptr [r8 + 4*rax + 291]178 179// CHECK: vpdpbuud ymm12, ymm13, ymmword ptr [rip]180// CHECK: encoding: [0xc4,0x62,0x14,0x50,0x25,0x00,0x00,0x00,0x00]181 vpdpbuud ymm12, ymm13, ymmword ptr [rip]182 183// CHECK: vpdpbuud ymm12, ymm13, ymmword ptr [2*rbp - 1024]184// CHECK: encoding: [0xc4,0x62,0x14,0x50,0x24,0x6d,0x00,0xfc,0xff,0xff]185 vpdpbuud ymm12, ymm13, ymmword ptr [2*rbp - 1024]186 187// CHECK: vpdpbuud xmm12, xmm13, xmmword ptr [rbp + 8*r14 + 268435456]188// CHECK: encoding: [0xc4,0x22,0x10,0x50,0xa4,0xf5,0x00,0x00,0x00,0x10]189 vpdpbuud xmm12, xmm13, xmmword ptr [rbp + 8*r14 + 268435456]190 191// CHECK: vpdpbuud xmm12, xmm13, xmmword ptr [r8 + 4*rax + 291]192// CHECK: encoding: [0xc4,0x42,0x10,0x50,0xa4,0x80,0x23,0x01,0x00,0x00]193 vpdpbuud xmm12, xmm13, xmmword ptr [r8 + 4*rax + 291]194 195// CHECK: vpdpbuud xmm12, xmm13, xmmword ptr [rip]196// CHECK: encoding: [0xc4,0x62,0x10,0x50,0x25,0x00,0x00,0x00,0x00]197 vpdpbuud xmm12, xmm13, xmmword ptr [rip]198 199// CHECK: vpdpbuud xmm12, xmm13, xmmword ptr [2*rbp - 512]200// CHECK: encoding: [0xc4,0x62,0x10,0x50,0x24,0x6d,0x00,0xfe,0xff,0xff]201 vpdpbuud xmm12, xmm13, xmmword ptr [2*rbp - 512]202 203// CHECK: vpdpbuuds ymm12, ymm13, ymm14204// CHECK: encoding: [0xc4,0x42,0x14,0x51,0xe6]205 vpdpbuuds ymm12, ymm13, ymm14206 207// CHECK: vpdpbuuds xmm12, xmm13, xmm14208// CHECK: encoding: [0xc4,0x42,0x10,0x51,0xe6]209 vpdpbuuds xmm12, xmm13, xmm14210 211// CHECK: vpdpbuuds ymm12, ymm13, ymmword ptr [rbp + 8*r14 + 268435456]212// CHECK: encoding: [0xc4,0x22,0x14,0x51,0xa4,0xf5,0x00,0x00,0x00,0x10]213 vpdpbuuds ymm12, ymm13, ymmword ptr [rbp + 8*r14 + 268435456]214 215// CHECK: vpdpbuuds ymm12, ymm13, ymmword ptr [r8 + 4*rax + 291]216// CHECK: encoding: [0xc4,0x42,0x14,0x51,0xa4,0x80,0x23,0x01,0x00,0x00]217 vpdpbuuds ymm12, ymm13, ymmword ptr [r8 + 4*rax + 291]218 219// CHECK: vpdpbuuds ymm12, ymm13, ymmword ptr [rip]220// CHECK: encoding: [0xc4,0x62,0x14,0x51,0x25,0x00,0x00,0x00,0x00]221 vpdpbuuds ymm12, ymm13, ymmword ptr [rip]222 223// CHECK: vpdpbuuds ymm12, ymm13, ymmword ptr [2*rbp - 1024]224// CHECK: encoding: [0xc4,0x62,0x14,0x51,0x24,0x6d,0x00,0xfc,0xff,0xff]225 vpdpbuuds ymm12, ymm13, ymmword ptr [2*rbp - 1024]226 227// CHECK: vpdpbuuds xmm12, xmm13, xmmword ptr [rbp + 8*r14 + 268435456]228// CHECK: encoding: [0xc4,0x22,0x10,0x51,0xa4,0xf5,0x00,0x00,0x00,0x10]229 vpdpbuuds xmm12, xmm13, xmmword ptr [rbp + 8*r14 + 268435456]230 231// CHECK: vpdpbuuds xmm12, xmm13, xmmword ptr [r8 + 4*rax + 291]232// CHECK: encoding: [0xc4,0x42,0x10,0x51,0xa4,0x80,0x23,0x01,0x00,0x00]233 vpdpbuuds xmm12, xmm13, xmmword ptr [r8 + 4*rax + 291]234 235// CHECK: vpdpbuuds xmm12, xmm13, xmmword ptr [rip]236// CHECK: encoding: [0xc4,0x62,0x10,0x51,0x25,0x00,0x00,0x00,0x00]237 vpdpbuuds xmm12, xmm13, xmmword ptr [rip]238 239// CHECK: vpdpbuuds xmm12, xmm13, xmmword ptr [2*rbp - 512]240// CHECK: encoding: [0xc4,0x62,0x10,0x51,0x24,0x6d,0x00,0xfe,0xff,0xff]241 vpdpbuuds xmm12, xmm13, xmmword ptr [2*rbp - 512]242 243