# RUN: llvm-mc --disassemble %s -triple=i386-unknown-unknown | FileCheck %s --check-prefixes=ATT
# RUN: llvm-mc --disassemble %s -triple=i386-unknown-unknown --output-asm-variant=1 | FileCheck %s --check-prefixes=INTEL
# ATT: vpdpwsud %ymm4, %ymm3, %ymm2
# INTEL: vpdpwsud ymm2, ymm3, ymm4
0xc4,0xe2,0x66,0xd2,0xd4
# ATT: vpdpwsud %xmm4, %xmm3, %xmm2
# INTEL: vpdpwsud xmm2, xmm3, xmm4
0xc4,0xe2,0x62,0xd2,0xd4
# ATT: vpdpwsud 268435456(%esp,%esi,8), %ymm3, %ymm2
# INTEL: vpdpwsud ymm2, ymm3, ymmword ptr [esp + 8*esi + 268435456]
0xc4,0xe2,0x66,0xd2,0x94,0xf4,0x00,0x00,0x00,0x10
# ATT: vpdpwsud 291(%edi,%eax,4), %ymm3, %ymm2
# INTEL: vpdpwsud ymm2, ymm3, ymmword ptr [edi + 4*eax + 291]
0xc4,0xe2,0x66,0xd2,0x94,0x87,0x23,0x01,0x00,0x00
# ATT: vpdpwsud (%eax), %ymm3, %ymm2
# INTEL: vpdpwsud ymm2, ymm3, ymmword ptr [eax]
0xc4,0xe2,0x66,0xd2,0x10
# ATT: vpdpwsud -1024(,%ebp,2), %ymm3, %ymm2
# INTEL: vpdpwsud ymm2, ymm3, ymmword ptr [2*ebp - 1024]
0xc4,0xe2,0x66,0xd2,0x14,0x6d,0x00,0xfc,0xff,0xff
# ATT: vpdpwsud 4064(%ecx), %ymm3, %ymm2
# INTEL: vpdpwsud ymm2, ymm3, ymmword ptr [ecx + 4064]
0xc4,0xe2,0x66,0xd2,0x91,0xe0,0x0f,0x00,0x00
# ATT: vpdpwsud -4096(%edx), %ymm3, %ymm2
# INTEL: vpdpwsud ymm2, ymm3, ymmword ptr [edx - 4096]
0xc4,0xe2,0x66,0xd2,0x92,0x00,0xf0,0xff,0xff
# ATT: vpdpwsud 268435456(%esp,%esi,8), %xmm3, %xmm2
# INTEL: vpdpwsud xmm2, xmm3, xmmword ptr [esp + 8*esi + 268435456]
0xc4,0xe2,0x62,0xd2,0x94,0xf4,0x00,0x00,0x00,0x10
# ATT: vpdpwsud 291(%edi,%eax,4), %xmm3, %xmm2
# INTEL: vpdpwsud xmm2, xmm3, xmmword ptr [edi + 4*eax + 291]
0xc4,0xe2,0x62,0xd2,0x94,0x87,0x23,0x01,0x00,0x00
# ATT: vpdpwsud (%eax), %xmm3, %xmm2
# INTEL: vpdpwsud xmm2, xmm3, xmmword ptr [eax]
0xc4,0xe2,0x62,0xd2,0x10
# ATT: vpdpwsud -512(,%ebp,2), %xmm3, %xmm2
# INTEL: vpdpwsud xmm2, xmm3, xmmword ptr [2*ebp - 512]
0xc4,0xe2,0x62,0xd2,0x14,0x6d,0x00,0xfe,0xff,0xff
# ATT: vpdpwsud 2032(%ecx), %xmm3, %xmm2
# INTEL: vpdpwsud xmm2, xmm3, xmmword ptr [ecx + 2032]
0xc4,0xe2,0x62,0xd2,0x91,0xf0,0x07,0x00,0x00
# ATT: vpdpwsud -2048(%edx), %xmm3, %xmm2
# INTEL: vpdpwsud xmm2, xmm3, xmmword ptr [edx - 2048]
0xc4,0xe2,0x62,0xd2,0x92,0x00,0xf8,0xff,0xff
# ATT: vpdpwsuds %ymm4, %ymm3, %ymm2
# INTEL: vpdpwsuds ymm2, ymm3, ymm4
0xc4,0xe2,0x66,0xd3,0xd4
# ATT: vpdpwsuds %xmm4, %xmm3, %xmm2
# INTEL: vpdpwsuds xmm2, xmm3, xmm4
0xc4,0xe2,0x62,0xd3,0xd4
# ATT: vpdpwsuds 268435456(%esp,%esi,8), %ymm3, %ymm2
# INTEL: vpdpwsuds ymm2, ymm3, ymmword ptr [esp + 8*esi + 268435456]
0xc4,0xe2,0x66,0xd3,0x94,0xf4,0x00,0x00,0x00,0x10
# ATT: vpdpwsuds 291(%edi,%eax,4), %ymm3, %ymm2
# INTEL: vpdpwsuds ymm2, ymm3, ymmword ptr [edi + 4*eax + 291]
0xc4,0xe2,0x66,0xd3,0x94,0x87,0x23,0x01,0x00,0x00
# ATT: vpdpwsuds (%eax), %ymm3, %ymm2
# INTEL: vpdpwsuds ymm2, ymm3, ymmword ptr [eax]
0xc4,0xe2,0x66,0xd3,0x10
# ATT: vpdpwsuds -1024(,%ebp,2), %ymm3, %ymm2
# INTEL: vpdpwsuds ymm2, ymm3, ymmword ptr [2*ebp - 1024]
0xc4,0xe2,0x66,0xd3,0x14,0x6d,0x00,0xfc,0xff,0xff
# ATT: vpdpwsuds 4064(%ecx), %ymm3, %ymm2
# INTEL: vpdpwsuds ymm2, ymm3, ymmword ptr [ecx + 4064]
0xc4,0xe2,0x66,0xd3,0x91,0xe0,0x0f,0x00,0x00
# ATT: vpdpwsuds -4096(%edx), %ymm3, %ymm2
# INTEL: vpdpwsuds ymm2, ymm3, ymmword ptr [edx - 4096]
0xc4,0xe2,0x66,0xd3,0x92,0x00,0xf0,0xff,0xff
# ATT: vpdpwsuds 268435456(%esp,%esi,8), %xmm3, %xmm2
# INTEL: vpdpwsuds xmm2, xmm3, xmmword ptr [esp + 8*esi + 268435456]
0xc4,0xe2,0x62,0xd3,0x94,0xf4,0x00,0x00,0x00,0x10
# ATT: vpdpwsuds 291(%edi,%eax,4), %xmm3, %xmm2
# INTEL: vpdpwsuds xmm2, xmm3, xmmword ptr [edi + 4*eax + 291]
0xc4,0xe2,0x62,0xd3,0x94,0x87,0x23,0x01,0x00,0x00
# ATT: vpdpwsuds (%eax), %xmm3, %xmm2
# INTEL: vpdpwsuds xmm2, xmm3, xmmword ptr [eax]
0xc4,0xe2,0x62,0xd3,0x10
# ATT: vpdpwsuds -512(,%ebp,2), %xmm3, %xmm2
# INTEL: vpdpwsuds xmm2, xmm3, xmmword ptr [2*ebp - 512]
0xc4,0xe2,0x62,0xd3,0x14,0x6d,0x00,0xfe,0xff,0xff
# ATT: vpdpwsuds 2032(%ecx), %xmm3, %xmm2
# INTEL: vpdpwsuds xmm2, xmm3, xmmword ptr [ecx + 2032]
0xc4,0xe2,0x62,0xd3,0x91,0xf0,0x07,0x00,0x00
# ATT: vpdpwsuds -2048(%edx), %xmm3, %xmm2
# INTEL: vpdpwsuds xmm2, xmm3, xmmword ptr [edx - 2048]
0xc4,0xe2,0x62,0xd3,0x92,0x00,0xf8,0xff,0xff
# ATT: vpdpwusd %ymm4, %ymm3, %ymm2
# INTEL: vpdpwusd ymm2, ymm3, ymm4
0xc4,0xe2,0x65,0xd2,0xd4
# ATT: vpdpwusd %xmm4, %xmm3, %xmm2
# INTEL: vpdpwusd xmm2, xmm3, xmm4
0xc4,0xe2,0x61,0xd2,0xd4
# ATT: vpdpwusd 268435456(%esp,%esi,8), %ymm3, %ymm2
# INTEL: vpdpwusd ymm2, ymm3, ymmword ptr [esp + 8*esi + 268435456]
0xc4,0xe2,0x65,0xd2,0x94,0xf4,0x00,0x00,0x00,0x10
# ATT: vpdpwusd 291(%edi,%eax,4), %ymm3, %ymm2
# INTEL: vpdpwusd ymm2, ymm3, ymmword ptr [edi + 4*eax + 291]
0xc4,0xe2,0x65,0xd2,0x94,0x87,0x23,0x01,0x00,0x00
# ATT: vpdpwusd (%eax), %ymm3, %ymm2
# INTEL: vpdpwusd ymm2, ymm3, ymmword ptr [eax]
0xc4,0xe2,0x65,0xd2,0x10
# ATT: vpdpwusd -1024(,%ebp,2), %ymm3, %ymm2
# INTEL: vpdpwusd ymm2, ymm3, ymmword ptr [2*ebp - 1024]
0xc4,0xe2,0x65,0xd2,0x14,0x6d,0x00,0xfc,0xff,0xff
# ATT: vpdpwusd 4064(%ecx), %ymm3, %ymm2
# INTEL: vpdpwusd ymm2, ymm3, ymmword ptr [ecx + 4064]
0xc4,0xe2,0x65,0xd2,0x91,0xe0,0x0f,0x00,0x00
# ATT: vpdpwusd -4096(%edx), %ymm3, %ymm2
# INTEL: vpdpwusd ymm2, ymm3, ymmword ptr [edx - 4096]
0xc4,0xe2,0x65,0xd2,0x92,0x00,0xf0,0xff,0xff
# ATT: vpdpwusd 268435456(%esp,%esi,8), %xmm3, %xmm2
# INTEL: vpdpwusd xmm2, xmm3, xmmword ptr [esp + 8*esi + 268435456]
0xc4,0xe2,0x61,0xd2,0x94,0xf4,0x00,0x00,0x00,0x10
# ATT: vpdpwusd 291(%edi,%eax,4), %xmm3, %xmm2
# INTEL: vpdpwusd xmm2, xmm3, xmmword ptr [edi + 4*eax + 291]
0xc4,0xe2,0x61,0xd2,0x94,0x87,0x23,0x01,0x00,0x00
# ATT: vpdpwusd (%eax), %xmm3, %xmm2
# INTEL: vpdpwusd xmm2, xmm3, xmmword ptr [eax]
0xc4,0xe2,0x61,0xd2,0x10
# ATT: vpdpwusd -512(,%ebp,2), %xmm3, %xmm2
# INTEL: vpdpwusd xmm2, xmm3, xmmword ptr [2*ebp - 512]
0xc4,0xe2,0x61,0xd2,0x14,0x6d,0x00,0xfe,0xff,0xff
# ATT: vpdpwusd 2032(%ecx), %xmm3, %xmm2
# INTEL: vpdpwusd xmm2, xmm3, xmmword ptr [ecx + 2032]
0xc4,0xe2,0x61,0xd2,0x91,0xf0,0x07,0x00,0x00
# ATT: vpdpwusd -2048(%edx), %xmm3, %xmm2
# INTEL: vpdpwusd xmm2, xmm3, xmmword ptr [edx - 2048]
0xc4,0xe2,0x61,0xd2,0x92,0x00,0xf8,0xff,0xff
# ATT: vpdpwusds %ymm4, %ymm3, %ymm2
# INTEL: vpdpwusds ymm2, ymm3, ymm4
0xc4,0xe2,0x65,0xd3,0xd4
# ATT: vpdpwusds %xmm4, %xmm3, %xmm2
# INTEL: vpdpwusds xmm2, xmm3, xmm4
0xc4,0xe2,0x61,0xd3,0xd4
# ATT: vpdpwusds 268435456(%esp,%esi,8), %ymm3, %ymm2
# INTEL: vpdpwusds ymm2, ymm3, ymmword ptr [esp + 8*esi + 268435456]
0xc4,0xe2,0x65,0xd3,0x94,0xf4,0x00,0x00,0x00,0x10
# ATT: vpdpwusds 291(%edi,%eax,4), %ymm3, %ymm2
# INTEL: vpdpwusds ymm2, ymm3, ymmword ptr [edi + 4*eax + 291]
0xc4,0xe2,0x65,0xd3,0x94,0x87,0x23,0x01,0x00,0x00
# ATT: vpdpwusds (%eax), %ymm3, %ymm2
# INTEL: vpdpwusds ymm2, ymm3, ymmword ptr [eax]
0xc4,0xe2,0x65,0xd3,0x10
# ATT: vpdpwusds -1024(,%ebp,2), %ymm3, %ymm2
# INTEL: vpdpwusds ymm2, ymm3, ymmword ptr [2*ebp - 1024]
0xc4,0xe2,0x65,0xd3,0x14,0x6d,0x00,0xfc,0xff,0xff
# ATT: vpdpwusds 4064(%ecx), %ymm3, %ymm2
# INTEL: vpdpwusds ymm2, ymm3, ymmword ptr [ecx + 4064]
0xc4,0xe2,0x65,0xd3,0x91,0xe0,0x0f,0x00,0x00
# ATT: vpdpwusds -4096(%edx), %ymm3, %ymm2
# INTEL: vpdpwusds ymm2, ymm3, ymmword ptr [edx - 4096]
0xc4,0xe2,0x65,0xd3,0x92,0x00,0xf0,0xff,0xff
# ATT: vpdpwusds 268435456(%esp,%esi,8), %xmm3, %xmm2
# INTEL: vpdpwusds xmm2, xmm3, xmmword ptr [esp + 8*esi + 268435456]
0xc4,0xe2,0x61,0xd3,0x94,0xf4,0x00,0x00,0x00,0x10
# ATT: vpdpwusds 291(%edi,%eax,4), %xmm3, %xmm2
# INTEL: vpdpwusds xmm2, xmm3, xmmword ptr [edi + 4*eax + 291]
0xc4,0xe2,0x61,0xd3,0x94,0x87,0x23,0x01,0x00,0x00
# ATT: vpdpwusds (%eax), %xmm3, %xmm2
# INTEL: vpdpwusds xmm2, xmm3, xmmword ptr [eax]
0xc4,0xe2,0x61,0xd3,0x10
# ATT: vpdpwusds -512(,%ebp,2), %xmm3, %xmm2
# INTEL: vpdpwusds xmm2, xmm3, xmmword ptr [2*ebp - 512]
0xc4,0xe2,0x61,0xd3,0x14,0x6d,0x00,0xfe,0xff,0xff
# ATT: vpdpwusds 2032(%ecx), %xmm3, %xmm2
# INTEL: vpdpwusds xmm2, xmm3, xmmword ptr [ecx + 2032]
0xc4,0xe2,0x61,0xd3,0x91,0xf0,0x07,0x00,0x00
# ATT: vpdpwusds -2048(%edx), %xmm3, %xmm2
# INTEL: vpdpwusds xmm2, xmm3, xmmword ptr [edx - 2048]
0xc4,0xe2,0x61,0xd3,0x92,0x00,0xf8,0xff,0xff
# ATT: vpdpwuud %ymm4, %ymm3, %ymm2
# INTEL: vpdpwuud ymm2, ymm3, ymm4
0xc4,0xe2,0x64,0xd2,0xd4
# ATT: vpdpwuud %xmm4, %xmm3, %xmm2
# INTEL: vpdpwuud xmm2, xmm3, xmm4
0xc4,0xe2,0x60,0xd2,0xd4
# ATT: vpdpwuud 268435456(%esp,%esi,8), %ymm3, %ymm2
# INTEL: vpdpwuud ymm2, ymm3, ymmword ptr [esp + 8*esi + 268435456]
0xc4,0xe2,0x64,0xd2,0x94,0xf4,0x00,0x00,0x00,0x10
# ATT: vpdpwuud 291(%edi,%eax,4), %ymm3, %ymm2
# INTEL: vpdpwuud ymm2, ymm3, ymmword ptr [edi + 4*eax + 291]
0xc4,0xe2,0x64,0xd2,0x94,0x87,0x23,0x01,0x00,0x00
# ATT: vpdpwuud (%eax), %ymm3, %ymm2
# INTEL: vpdpwuud ymm2, ymm3, ymmword ptr [eax]
0xc4,0xe2,0x64,0xd2,0x10
# ATT: vpdpwuud -1024(,%ebp,2), %ymm3, %ymm2
# INTEL: vpdpwuud ymm2, ymm3, ymmword ptr [2*ebp - 1024]
0xc4,0xe2,0x64,0xd2,0x14,0x6d,0x00,0xfc,0xff,0xff
# ATT: vpdpwuud 4064(%ecx), %ymm3, %ymm2
# INTEL: vpdpwuud ymm2, ymm3, ymmword ptr [ecx + 4064]
0xc4,0xe2,0x64,0xd2,0x91,0xe0,0x0f,0x00,0x00
# ATT: vpdpwuud -4096(%edx), %ymm3, %ymm2
# INTEL: vpdpwuud ymm2, ymm3, ymmword ptr [edx - 4096]
0xc4,0xe2,0x64,0xd2,0x92,0x00,0xf0,0xff,0xff
# ATT: vpdpwuud 268435456(%esp,%esi,8), %xmm3, %xmm2
# INTEL: vpdpwuud xmm2, xmm3, xmmword ptr [esp + 8*esi + 268435456]
0xc4,0xe2,0x60,0xd2,0x94,0xf4,0x00,0x00,0x00,0x10
# ATT: vpdpwuud 291(%edi,%eax,4), %xmm3, %xmm2
# INTEL: vpdpwuud xmm2, xmm3, xmmword ptr [edi + 4*eax + 291]
0xc4,0xe2,0x60,0xd2,0x94,0x87,0x23,0x01,0x00,0x00
# ATT: vpdpwuud (%eax), %xmm3, %xmm2
# INTEL: vpdpwuud xmm2, xmm3, xmmword ptr [eax]
0xc4,0xe2,0x60,0xd2,0x10
# ATT: vpdpwuud -512(,%ebp,2), %xmm3, %xmm2
# INTEL: vpdpwuud xmm2, xmm3, xmmword ptr [2*ebp - 512]
0xc4,0xe2,0x60,0xd2,0x14,0x6d,0x00,0xfe,0xff,0xff
# ATT: vpdpwuud 2032(%ecx), %xmm3, %xmm2
# INTEL: vpdpwuud xmm2, xmm3, xmmword ptr [ecx + 2032]
0xc4,0xe2,0x60,0xd2,0x91,0xf0,0x07,0x00,0x00
# ATT: vpdpwuud -2048(%edx), %xmm3, %xmm2
# INTEL: vpdpwuud xmm2, xmm3, xmmword ptr [edx - 2048]
0xc4,0xe2,0x60,0xd2,0x92,0x00,0xf8,0xff,0xff
# ATT: vpdpwuuds %ymm4, %ymm3, %ymm2
# INTEL: vpdpwuuds ymm2, ymm3, ymm4
0xc4,0xe2,0x64,0xd3,0xd4
# ATT: vpdpwuuds %xmm4, %xmm3, %xmm2
# INTEL: vpdpwuuds xmm2, xmm3, xmm4
0xc4,0xe2,0x60,0xd3,0xd4
# ATT: vpdpwuuds 268435456(%esp,%esi,8), %ymm3, %ymm2
# INTEL: vpdpwuuds ymm2, ymm3, ymmword ptr [esp + 8*esi + 268435456]
0xc4,0xe2,0x64,0xd3,0x94,0xf4,0x00,0x00,0x00,0x10
# ATT: vpdpwuuds 291(%edi,%eax,4), %ymm3, %ymm2
# INTEL: vpdpwuuds ymm2, ymm3, ymmword ptr [edi + 4*eax + 291]
0xc4,0xe2,0x64,0xd3,0x94,0x87,0x23,0x01,0x00,0x00
# ATT: vpdpwuuds (%eax), %ymm3, %ymm2
# INTEL: vpdpwuuds ymm2, ymm3, ymmword ptr [eax]
0xc4,0xe2,0x64,0xd3,0x10
# ATT: vpdpwuuds -1024(,%ebp,2), %ymm3, %ymm2
# INTEL: vpdpwuuds ymm2, ymm3, ymmword ptr [2*ebp - 1024]
0xc4,0xe2,0x64,0xd3,0x14,0x6d,0x00,0xfc,0xff,0xff
# ATT: vpdpwuuds 4064(%ecx), %ymm3, %ymm2
# INTEL: vpdpwuuds ymm2, ymm3, ymmword ptr [ecx + 4064]
0xc4,0xe2,0x64,0xd3,0x91,0xe0,0x0f,0x00,0x00
# ATT: vpdpwuuds -4096(%edx), %ymm3, %ymm2
# INTEL: vpdpwuuds ymm2, ymm3, ymmword ptr [edx - 4096]
0xc4,0xe2,0x64,0xd3,0x92,0x00,0xf0,0xff,0xff
# ATT: vpdpwuuds 268435456(%esp,%esi,8), %xmm3, %xmm2
# INTEL: vpdpwuuds xmm2, xmm3, xmmword ptr [esp + 8*esi + 268435456]
0xc4,0xe2,0x60,0xd3,0x94,0xf4,0x00,0x00,0x00,0x10
# ATT: vpdpwuuds 291(%edi,%eax,4), %xmm3, %xmm2
# INTEL: vpdpwuuds xmm2, xmm3, xmmword ptr [edi + 4*eax + 291]
0xc4,0xe2,0x60,0xd3,0x94,0x87,0x23,0x01,0x00,0x00
# ATT: vpdpwuuds (%eax), %xmm3, %xmm2
# INTEL: vpdpwuuds xmm2, xmm3, xmmword ptr [eax]
0xc4,0xe2,0x60,0xd3,0x10
# ATT: vpdpwuuds -512(,%ebp,2), %xmm3, %xmm2
# INTEL: vpdpwuuds xmm2, xmm3, xmmword ptr [2*ebp - 512]
0xc4,0xe2,0x60,0xd3,0x14,0x6d,0x00,0xfe,0xff,0xff
# ATT: vpdpwuuds 2032(%ecx), %xmm3, %xmm2
# INTEL: vpdpwuuds xmm2, xmm3, xmmword ptr [ecx + 2032]
0xc4,0xe2,0x60,0xd3,0x91,0xf0,0x07,0x00,0x00
# ATT: vpdpwuuds -2048(%edx), %xmm3, %xmm2
# INTEL: vpdpwuuds xmm2, xmm3, xmmword ptr [edx - 2048]
0xc4,0xe2,0x60,0xd3,0x92,0x00,0xf8,0xff,0xff