# RUN: llvm-mc --disassemble %s -triple=x86_64 | FileCheck %s --check-prefixes=ATT
# RUN: llvm-mc --disassemble %s -triple=x86_64 -x86-asm-syntax=intel --output-asm-variant=1 | FileCheck %s --check-prefixes=INTEL

## sha1msg1

# ATT:   sha1msg1	%xmm13, %xmm12
# INTEL: sha1msg1	xmm12, xmm13
0x62,0x54,0x7c,0x08,0xd9,0xe5

# ATT:   sha1msg1	123(%rax,%rbx,4), %xmm12
# INTEL: sha1msg1	xmm12, xmmword ptr [rax + 4*rbx + 123]
0x62,0x74,0x7c,0x08,0xd9,0x64,0x98,0x7b

# ATT:   sha1msg1	%xmm13, %xmm12
# INTEL: sha1msg1	xmm12, xmm13
0x45,0x0f,0x38,0xc9,0xe5

# ATT:   sha1msg1	291(%r28,%r29,4), %xmm12
# INTEL: sha1msg1	xmm12, xmmword ptr [r28 + 4*r29 + 291]
0x62,0x1c,0x78,0x08,0xd9,0xa4,0xac,0x23,0x01,0x00,0x00

## sha1msg2

# ATT:   sha1msg2	%xmm13, %xmm12
# INTEL: sha1msg2	xmm12, xmm13
0x62,0x54,0x7c,0x08,0xda,0xe5

# ATT:   sha1msg2	123(%rax,%rbx,4), %xmm12
# INTEL: sha1msg2	xmm12, xmmword ptr [rax + 4*rbx + 123]
0x62,0x74,0x7c,0x08,0xda,0x64,0x98,0x7b

# ATT:   sha1msg2	%xmm13, %xmm12
# INTEL: sha1msg2	xmm12, xmm13
0x45,0x0f,0x38,0xca,0xe5

# ATT:   sha1msg2	291(%r28,%r29,4), %xmm12
# INTEL: sha1msg2	xmm12, xmmword ptr [r28 + 4*r29 + 291]
0x62,0x1c,0x78,0x08,0xda,0xa4,0xac,0x23,0x01,0x00,0x00

## sha1nexte

# ATT:   sha1nexte	%xmm13, %xmm12
# INTEL: sha1nexte	xmm12, xmm13
0x62,0x54,0x7c,0x08,0xd8,0xe5

# ATT:   sha1nexte	123(%rax,%rbx,4), %xmm12
# INTEL: sha1nexte	xmm12, xmmword ptr [rax + 4*rbx + 123]
0x62,0x74,0x7c,0x08,0xd8,0x64,0x98,0x7b

# ATT:   sha1nexte	%xmm13, %xmm12
# INTEL: sha1nexte	xmm12, xmm13
0x45,0x0f,0x38,0xc8,0xe5

# ATT:   sha1nexte	291(%r28,%r29,4), %xmm12
# INTEL: sha1nexte	xmm12, xmmword ptr [r28 + 4*r29 + 291]
0x62,0x1c,0x78,0x08,0xd8,0xa4,0xac,0x23,0x01,0x00,0x00

## sha1rnds4

# ATT:   sha1rnds4	$123, %xmm13, %xmm12
# INTEL: sha1rnds4	xmm12, xmm13, 123
0x62,0x54,0x7c,0x08,0xd4,0xe5,0x7b

# ATT:   sha1rnds4	$123, 123(%rax,%rbx,4), %xmm12
# INTEL: sha1rnds4	xmm12, xmmword ptr [rax + 4*rbx + 123], 123
0x62,0x74,0x7c,0x08,0xd4,0x64,0x98,0x7b,0x7b

# ATT:   sha1rnds4	$123, %xmm13, %xmm12
# INTEL: sha1rnds4	xmm12, xmm13, 123
0x45,0x0f,0x3a,0xcc,0xe5,0x7b

# ATT:   sha1rnds4	$123, 291(%r28,%r29,4), %xmm12
# INTEL: sha1rnds4	xmm12, xmmword ptr [r28 + 4*r29 + 291], 123
0x62,0x1c,0x78,0x08,0xd4,0xa4,0xac,0x23,0x01,0x00,0x00,0x7b

## sha256msg1

# ATT:   sha256msg1	%xmm13, %xmm12
# INTEL: sha256msg1	xmm12, xmm13
0x62,0x54,0x7c,0x08,0xdc,0xe5

# ATT:   sha256msg1	123(%rax,%rbx,4), %xmm12
# INTEL: sha256msg1	xmm12, xmmword ptr [rax + 4*rbx + 123]
0x62,0x74,0x7c,0x08,0xdc,0x64,0x98,0x7b

# ATT:   sha256msg1	%xmm13, %xmm12
# INTEL: sha256msg1	xmm12, xmm13
0x45,0x0f,0x38,0xcc,0xe5

# ATT:   sha256msg1	291(%r28,%r29,4), %xmm12
# INTEL: sha256msg1	xmm12, xmmword ptr [r28 + 4*r29 + 291]
0x62,0x1c,0x78,0x08,0xdc,0xa4,0xac,0x23,0x01,0x00,0x00

## sha256msg2

# ATT:   sha256msg2	%xmm13, %xmm12
# INTEL: sha256msg2	xmm12, xmm13
0x62,0x54,0x7c,0x08,0xdd,0xe5

# ATT:   sha256msg2	123(%rax,%rbx,4), %xmm12
# INTEL: sha256msg2	xmm12, xmmword ptr [rax + 4*rbx + 123]
0x62,0x74,0x7c,0x08,0xdd,0x64,0x98,0x7b

# ATT:   sha256msg2	%xmm13, %xmm12
# INTEL: sha256msg2	xmm12, xmm13
0x45,0x0f,0x38,0xcd,0xe5

# ATT:   sha256msg2	291(%r28,%r29,4), %xmm12
# INTEL: sha256msg2	xmm12, xmmword ptr [r28 + 4*r29 + 291]
0x62,0x1c,0x78,0x08,0xdd,0xa4,0xac,0x23,0x01,0x00,0x00

## sha256rnds2

# ATT:   sha256rnds2	%xmm0, 123(%rax,%rbx,4), %xmm12
# INTEL: sha256rnds2	xmm12, xmmword ptr [rax + 4*rbx + 123], xmm0
0x62,0x74,0x7c,0x08,0xdb,0x64,0x98,0x7b

# ATT:   sha256rnds2	%xmm0, %xmm13, %xmm12
# INTEL: sha256rnds2	xmm12, xmm13, xmm0
0x45,0x0f,0x38,0xcb,0xe5

# ATT:   sha256rnds2	%xmm0, 291(%r28,%r29,4), %xmm12
# INTEL: sha256rnds2	xmm12, xmmword ptr [r28 + 4*r29 + 291], xmm0
0x62,0x1c,0x78,0x08,0xdb,0xa4,0xac,0x23,0x01,0x00,0x00
