# RUN: llvm-mc -triple x86_64 -show-encoding %s | FileCheck %s
# CHECK: {evex} rolb %al
# CHECK: encoding: [0x62,0xf4,0x7c,0x08,0xd0,0xc0]
{evex} rolb $1, %al
# CHECK: {evex} rolw %ax
# CHECK: encoding: [0x62,0xf4,0x7d,0x08,0xd1,0xc0]
{evex} rolw $1, %ax
# CHECK: {evex} roll %eax
# CHECK: encoding: [0x62,0xf4,0x7c,0x08,0xd1,0xc0]
{evex} roll $1, %eax
# CHECK: {evex} rolq %rax
# CHECK: encoding: [0x62,0xf4,0xfc,0x08,0xd1,0xc0]
{evex} rolq $1, %rax
# CHECK: {nf} rolb %al
# CHECK: encoding: [0x62,0xf4,0x7c,0x0c,0xd0,0xc0]
{nf} rolb $1, %al
# CHECK: {nf} rolw %ax
# CHECK: encoding: [0x62,0xf4,0x7d,0x0c,0xd1,0xc0]
{nf} rolw $1, %ax
# CHECK: {nf} roll %eax
# CHECK: encoding: [0x62,0xf4,0x7c,0x0c,0xd1,0xc0]
{nf} roll $1, %eax
# CHECK: {nf} rolq %rax
# CHECK: encoding: [0x62,0xf4,0xfc,0x0c,0xd1,0xc0]
{nf} rolq $1, %rax
# CHECK: rolb %al, %bl
# CHECK: encoding: [0x62,0xf4,0x64,0x18,0xd0,0xc0]
rolb $1, %al, %bl
# CHECK: rolw %ax, %bx
# CHECK: encoding: [0x62,0xf4,0x65,0x18,0xd1,0xc0]
rolw $1, %ax, %bx
# CHECK: roll %eax, %ebx
# CHECK: encoding: [0x62,0xf4,0x64,0x18,0xd1,0xc0]
roll $1, %eax, %ebx
# CHECK: rolq %rax, %rbx
# CHECK: encoding: [0x62,0xf4,0xe4,0x18,0xd1,0xc0]
rolq $1, %rax, %rbx
# CHECK: {nf} rolb %al, %bl
# CHECK: encoding: [0x62,0xf4,0x64,0x1c,0xd0,0xc0]
{nf} rolb $1, %al, %bl
# CHECK: {nf} rolw %ax, %bx
# CHECK: encoding: [0x62,0xf4,0x65,0x1c,0xd1,0xc0]
{nf} rolw $1, %ax, %bx
# CHECK: {nf} roll %eax, %ebx
# CHECK: encoding: [0x62,0xf4,0x64,0x1c,0xd1,0xc0]
{nf} roll $1, %eax, %ebx
# CHECK: {nf} rolq %rax, %rbx
# CHECK: encoding: [0x62,0xf4,0xe4,0x1c,0xd1,0xc0]
{nf} rolq $1, %rax, %rbx
# CHECK: {evex} rolb 123(%r8,%rax,4)
# CHECK: encoding: [0x62,0xd4,0x7c,0x08,0xd0,0x44,0x80,0x7b]
{evex} rolb $1, 123(%r8,%rax,4)
# CHECK: {evex} rolw 123(%r8,%rax,4)
# CHECK: encoding: [0x62,0xd4,0x7d,0x08,0xd1,0x44,0x80,0x7b]
{evex} rolw $1, 123(%r8,%rax,4)
# CHECK: {evex} roll 123(%r8,%rax,4)
# CHECK: encoding: [0x62,0xd4,0x7c,0x08,0xd1,0x44,0x80,0x7b]
{evex} roll $1, 123(%r8,%rax,4)
# CHECK: {evex} rolq 123(%r8,%rax,4)
# CHECK: encoding: [0x62,0xd4,0xfc,0x08,0xd1,0x44,0x80,0x7b]
{evex} rolq $1, 123(%r8,%rax,4)
# CHECK: {nf} rolb 123(%r8,%rax,4)
# CHECK: encoding: [0x62,0xd4,0x7c,0x0c,0xd0,0x44,0x80,0x7b]
{nf} rolb $1, 123(%r8,%rax,4)
# CHECK: {nf} rolw 123(%r8,%rax,4)
# CHECK: encoding: [0x62,0xd4,0x7d,0x0c,0xd1,0x44,0x80,0x7b]
{nf} rolw $1, 123(%r8,%rax,4)
# CHECK: {nf} roll 123(%r8,%rax,4)
# CHECK: encoding: [0x62,0xd4,0x7c,0x0c,0xd1,0x44,0x80,0x7b]
{nf} roll $1, 123(%r8,%rax,4)
# CHECK: {nf} rolq 123(%r8,%rax,4)
# CHECK: encoding: [0x62,0xd4,0xfc,0x0c,0xd1,0x44,0x80,0x7b]
{nf} rolq $1, 123(%r8,%rax,4)
# CHECK: rolb 123(%r8,%rax,4), %bl
# CHECK: encoding: [0x62,0xd4,0x64,0x18,0xd0,0x44,0x80,0x7b]
rolb $1, 123(%r8,%rax,4), %bl
# CHECK: rolw 123(%r8,%rax,4), %bx
# CHECK: encoding: [0x62,0xd4,0x65,0x18,0xd1,0x44,0x80,0x7b]
rolw $1, 123(%r8,%rax,4), %bx
# CHECK: roll 123(%r8,%rax,4), %ebx
# CHECK: encoding: [0x62,0xd4,0x64,0x18,0xd1,0x44,0x80,0x7b]
roll $1, 123(%r8,%rax,4), %ebx
# CHECK: rolq 123(%r8,%rax,4), %rbx
# CHECK: encoding: [0x62,0xd4,0xe4,0x18,0xd1,0x44,0x80,0x7b]
rolq $1, 123(%r8,%rax,4), %rbx
# CHECK: {nf} rolb 123(%r8,%rax,4), %bl
# CHECK: encoding: [0x62,0xd4,0x64,0x1c,0xd0,0x44,0x80,0x7b]
{nf} rolb $1, 123(%r8,%rax,4), %bl
# CHECK: {nf} rolw 123(%r8,%rax,4), %bx
# CHECK: encoding: [0x62,0xd4,0x65,0x1c,0xd1,0x44,0x80,0x7b]
{nf} rolw $1, 123(%r8,%rax,4), %bx
# CHECK: {nf} roll 123(%r8,%rax,4), %ebx
# CHECK: encoding: [0x62,0xd4,0x64,0x1c,0xd1,0x44,0x80,0x7b]
{nf} roll $1, 123(%r8,%rax,4), %ebx
# CHECK: {nf} rolq 123(%r8,%rax,4), %rbx
# CHECK: encoding: [0x62,0xd4,0xe4,0x1c,0xd1,0x44,0x80,0x7b]
{nf} rolq $1, 123(%r8,%rax,4), %rbx