llvm/llvm/test/MC/X86/apx/ror-encopt.s

# RUN: llvm-mc -triple x86_64 -show-encoding %s | FileCheck %s

# CHECK: {evex}	rorb	%al
# CHECK: encoding: [0x62,0xf4,0x7c,0x08,0xd0,0xc8]
         {evex}	rorb	$1, %al
# CHECK: {evex}	rorw	%ax
# CHECK: encoding: [0x62,0xf4,0x7d,0x08,0xd1,0xc8]
         {evex}	rorw	$1, %ax
# CHECK: {evex}	rorl	%eax
# CHECK: encoding: [0x62,0xf4,0x7c,0x08,0xd1,0xc8]
         {evex}	rorl	$1, %eax
# CHECK: {evex}	rorq	%rax
# CHECK: encoding: [0x62,0xf4,0xfc,0x08,0xd1,0xc8]
         {evex}	rorq	$1, %rax
# CHECK: {nf}	rorb	%al
# CHECK: encoding: [0x62,0xf4,0x7c,0x0c,0xd0,0xc8]
         {nf}	rorb	$1, %al
# CHECK: {nf}	rorw	%ax
# CHECK: encoding: [0x62,0xf4,0x7d,0x0c,0xd1,0xc8]
         {nf}	rorw	$1, %ax
# CHECK: {nf}	rorl	%eax
# CHECK: encoding: [0x62,0xf4,0x7c,0x0c,0xd1,0xc8]
         {nf}	rorl	$1, %eax
# CHECK: {nf}	rorq	%rax
# CHECK: encoding: [0x62,0xf4,0xfc,0x0c,0xd1,0xc8]
         {nf}	rorq	$1, %rax
# CHECK: rorb	%al, %bl
# CHECK: encoding: [0x62,0xf4,0x64,0x18,0xd0,0xc8]
         rorb	$1, %al, %bl
# CHECK: rorw	%ax, %bx
# CHECK: encoding: [0x62,0xf4,0x65,0x18,0xd1,0xc8]
         rorw	$1, %ax, %bx
# CHECK: rorl	%eax, %ebx
# CHECK: encoding: [0x62,0xf4,0x64,0x18,0xd1,0xc8]
         rorl	$1, %eax, %ebx
# CHECK: rorq	%rax, %rbx
# CHECK: encoding: [0x62,0xf4,0xe4,0x18,0xd1,0xc8]
         rorq	$1, %rax, %rbx
# CHECK: {nf}	rorb	%al, %bl
# CHECK: encoding: [0x62,0xf4,0x64,0x1c,0xd0,0xc8]
         {nf}	rorb	$1, %al, %bl
# CHECK: {nf}	rorw	%ax, %bx
# CHECK: encoding: [0x62,0xf4,0x65,0x1c,0xd1,0xc8]
         {nf}	rorw	$1, %ax, %bx
# CHECK: {nf}	rorl	%eax, %ebx
# CHECK: encoding: [0x62,0xf4,0x64,0x1c,0xd1,0xc8]
         {nf}	rorl	$1, %eax, %ebx
# CHECK: {nf}	rorq	%rax, %rbx
# CHECK: encoding: [0x62,0xf4,0xe4,0x1c,0xd1,0xc8]
         {nf}	rorq	$1, %rax, %rbx
# CHECK: {evex}	rorb	123(%r8,%rax,4)
# CHECK: encoding: [0x62,0xd4,0x7c,0x08,0xd0,0x4c,0x80,0x7b]
         {evex}	rorb	$1, 123(%r8,%rax,4)
# CHECK: {evex}	rorw	123(%r8,%rax,4)
# CHECK: encoding: [0x62,0xd4,0x7d,0x08,0xd1,0x4c,0x80,0x7b]
         {evex}	rorw	$1, 123(%r8,%rax,4)
# CHECK: {evex}	rorl	123(%r8,%rax,4)
# CHECK: encoding: [0x62,0xd4,0x7c,0x08,0xd1,0x4c,0x80,0x7b]
         {evex}	rorl	$1, 123(%r8,%rax,4)
# CHECK: {evex}	rorq	123(%r8,%rax,4)
# CHECK: encoding: [0x62,0xd4,0xfc,0x08,0xd1,0x4c,0x80,0x7b]
         {evex}	rorq	$1, 123(%r8,%rax,4)
# CHECK: {nf}	rorb	123(%r8,%rax,4)
# CHECK: encoding: [0x62,0xd4,0x7c,0x0c,0xd0,0x4c,0x80,0x7b]
         {nf}	rorb	$1, 123(%r8,%rax,4)
# CHECK: {nf}	rorw	123(%r8,%rax,4)
# CHECK: encoding: [0x62,0xd4,0x7d,0x0c,0xd1,0x4c,0x80,0x7b]
         {nf}	rorw	$1, 123(%r8,%rax,4)
# CHECK: {nf}	rorl	123(%r8,%rax,4)
# CHECK: encoding: [0x62,0xd4,0x7c,0x0c,0xd1,0x4c,0x80,0x7b]
         {nf}	rorl	$1, 123(%r8,%rax,4)
# CHECK: {nf}	rorq	123(%r8,%rax,4)
# CHECK: encoding: [0x62,0xd4,0xfc,0x0c,0xd1,0x4c,0x80,0x7b]
         {nf}	rorq	$1, 123(%r8,%rax,4)
# CHECK: rorb	123(%r8,%rax,4), %bl
# CHECK: encoding: [0x62,0xd4,0x64,0x18,0xd0,0x4c,0x80,0x7b]
         rorb	$1, 123(%r8,%rax,4), %bl
# CHECK: rorw	123(%r8,%rax,4), %bx
# CHECK: encoding: [0x62,0xd4,0x65,0x18,0xd1,0x4c,0x80,0x7b]
         rorw	$1, 123(%r8,%rax,4), %bx
# CHECK: rorl	123(%r8,%rax,4), %ebx
# CHECK: encoding: [0x62,0xd4,0x64,0x18,0xd1,0x4c,0x80,0x7b]
         rorl	$1, 123(%r8,%rax,4), %ebx
# CHECK: rorq	123(%r8,%rax,4), %rbx
# CHECK: encoding: [0x62,0xd4,0xe4,0x18,0xd1,0x4c,0x80,0x7b]
         rorq	$1, 123(%r8,%rax,4), %rbx
# CHECK: {nf}	rorb	123(%r8,%rax,4), %bl
# CHECK: encoding: [0x62,0xd4,0x64,0x1c,0xd0,0x4c,0x80,0x7b]
         {nf}	rorb	$1, 123(%r8,%rax,4), %bl
# CHECK: {nf}	rorw	123(%r8,%rax,4), %bx
# CHECK: encoding: [0x62,0xd4,0x65,0x1c,0xd1,0x4c,0x80,0x7b]
         {nf}	rorw	$1, 123(%r8,%rax,4), %bx
# CHECK: {nf}	rorl	123(%r8,%rax,4), %ebx
# CHECK: encoding: [0x62,0xd4,0x64,0x1c,0xd1,0x4c,0x80,0x7b]
         {nf}	rorl	$1, 123(%r8,%rax,4), %ebx
# CHECK: {nf}	rorq	123(%r8,%rax,4), %rbx
# CHECK: encoding: [0x62,0xd4,0xe4,0x1c,0xd1,0x4c,0x80,0x7b]
         {nf}	rorq	$1, 123(%r8,%rax,4), %rbx