blob: e951b30369d466a9df4826d2f913a6ca91b4d4db [file] [log] [blame]
// RUN: llvm-mc -triple x86_64 --show-encoding %s | FileCheck %s
// CHECK: movrsb 268435456(%rbp,%r14,8), %bl
// CHECK: encoding: [0x42,0x0f,0x38,0x8a,0x9c,0xf5,0x00,0x00,0x00,0x10]
movrs 268435456(%rbp,%r14,8), %bl
// CHECK: movrsb 291(%r8,%rax,4), %bl
// CHECK: encoding: [0x41,0x0f,0x38,0x8a,0x9c,0x80,0x23,0x01,0x00,0x00]
movrs 291(%r8,%rax,4), %bl
// CHECK: movrsb (%rip), %bl
// CHECK: encoding: [0x0f,0x38,0x8a,0x1d,0x00,0x00,0x00,0x00]
movrs (%rip), %bl
// CHECK: movrsb -32(,%rbp,2), %bl
// CHECK: encoding: [0x0f,0x38,0x8a,0x1c,0x6d,0xe0,0xff,0xff,0xff]
movrs -32(,%rbp,2), %bl
// CHECK: movrsb 127(%rcx), %bl
// CHECK: encoding: [0x0f,0x38,0x8a,0x59,0x7f]
movrs 127(%rcx), %bl
// CHECK: movrsb -128(%rdx), %bl
// CHECK: encoding: [0x0f,0x38,0x8a,0x5a,0x80]
movrs -128(%rdx), %bl
// CHECK: movrsw 268435456(%rbp,%r14,8), %bx
// CHECK: encoding: [0x66,0x42,0x0f,0x38,0x8b,0x9c,0xf5,0x00,0x00,0x00,0x10]
movrs 268435456(%rbp,%r14,8), %bx
// CHECK: movrsw 291(%r8,%rax,4), %bx
// CHECK: encoding: [0x66,0x41,0x0f,0x38,0x8b,0x9c,0x80,0x23,0x01,0x00,0x00]
movrs 291(%r8,%rax,4), %bx
// CHECK: movrsw (%rip), %bx
// CHECK: encoding: [0x66,0x0f,0x38,0x8b,0x1d,0x00,0x00,0x00,0x00]
movrs (%rip), %bx
// CHECK: movrsw -32(,%rbp,2), %bx
// CHECK: encoding: [0x66,0x0f,0x38,0x8b,0x1c,0x6d,0xe0,0xff,0xff,0xff]
movrs -32(,%rbp,2), %bx
// CHECK: movrsw 127(%rcx), %bx
// CHECK: encoding: [0x66,0x0f,0x38,0x8b,0x59,0x7f]
movrs 127(%rcx), %bx
// CHECK: movrsw -128(%rdx), %bx
// CHECK: encoding: [0x66,0x0f,0x38,0x8b,0x5a,0x80]
movrs -128(%rdx), %bx
// CHECK: movrsl 268435456(%rbp,%r14,8), %ebx
// CHECK: encoding: [0x42,0x0f,0x38,0x8b,0x9c,0xf5,0x00,0x00,0x00,0x10]
movrs 268435456(%rbp,%r14,8), %ebx
// CHECK: movrsl 291(%r8,%rax,4), %ebx
// CHECK: encoding: [0x41,0x0f,0x38,0x8b,0x9c,0x80,0x23,0x01,0x00,0x00]
movrs 291(%r8,%rax,4), %ebx
// CHECK: movrsl (%rip), %ebx
// CHECK: encoding: [0x0f,0x38,0x8b,0x1d,0x00,0x00,0x00,0x00]
movrs (%rip), %ebx
// CHECK: movrsl -32(,%rbp,2), %ebx
// CHECK: encoding: [0x0f,0x38,0x8b,0x1c,0x6d,0xe0,0xff,0xff,0xff]
movrs -32(,%rbp,2), %ebx
// CHECK: movrsl 127(%rcx), %ebx
// CHECK: encoding: [0x0f,0x38,0x8b,0x59,0x7f]
movrs 127(%rcx), %ebx
// CHECK: movrsl -128(%rdx), %ebx
// CHECK: encoding: [0x0f,0x38,0x8b,0x5a,0x80]
movrs -128(%rdx), %ebx
// CHECK: movrsq 268435456(%rbp,%r14,8), %rbx
// CHECK: encoding: [0x4a,0x0f,0x38,0x8b,0x9c,0xf5,0x00,0x00,0x00,0x10]
movrs 268435456(%rbp,%r14,8), %rbx
// CHECK: movrsq 291(%r8,%rax,4), %rbx
// CHECK: encoding: [0x49,0x0f,0x38,0x8b,0x9c,0x80,0x23,0x01,0x00,0x00]
movrs 291(%r8,%rax,4), %rbx
// CHECK: movrsq (%rip), %rbx
// CHECK: encoding: [0x48,0x0f,0x38,0x8b,0x1d,0x00,0x00,0x00,0x00]
movrs (%rip), %rbx
// CHECK: movrsq -32(,%rbp,2), %rbx
// CHECK: encoding: [0x48,0x0f,0x38,0x8b,0x1c,0x6d,0xe0,0xff,0xff,0xff]
movrs -32(,%rbp,2), %rbx
// CHECK: movrsq 127(%rcx), %rbx
// CHECK: encoding: [0x48,0x0f,0x38,0x8b,0x59,0x7f]
movrs 127(%rcx), %rbx
// CHECK: movrsq -128(%rdx), %rbx
// CHECK: encoding: [0x48,0x0f,0x38,0x8b,0x5a,0x80]
movrs -128(%rdx), %rbx
// CHECK: movrsb 268435456(%rbp,%r14,8), %r16b
// CHECK: encoding: [0x62,0xa4,0x7c,0x08,0x8a,0x84,0xf5,0x00,0x00,0x00,0x10]
movrs 268435456(%rbp,%r14,8), %r16b
// CHECK: movrsb 291(%r17,%rax,4), %bl
// CHECK: encoding: [0x62,0xfc,0x7c,0x08,0x8a,0x9c,0x81,0x23,0x01,0x00,0x00]
movrs 291(%r17,%rax,4), %bl
// CHECK: {evex} movrsb (%rip), %bl
// CHECK: encoding: [0x62,0xf4,0x7c,0x08,0x8a,0x1d,0x00,0x00,0x00,0x00]
{evex} movrs (%rip), %bl
// CHECK: movrsb -32(,%rbp,2), %r18b
// CHECK: encoding: [0x62,0xe4,0x7c,0x08,0x8a,0x14,0x6d,0xe0,0xff,0xff,0xff]
movrs -32(,%rbp,2), %r18b
// CHECK: movrsb 127(%r19), %bl
// CHECK: encoding: [0x62,0xfc,0x7c,0x08,0x8a,0x5b,0x7f]
movrs 127(%r19), %bl
// CHECK: movrsb -128(%r20), %bl
// CHECK: encoding: [0x62,0xfc,0x7c,0x08,0x8a,0x5c,0x24,0x80]
movrs -128(%r20), %bl
// CHECK: movrsw 268435456(%rbp,%r14,8), %r16w
// CHECK: encoding: [0x62,0xa4,0x7d,0x08,0x8b,0x84,0xf5,0x00,0x00,0x00,0x10]
movrs 268435456(%rbp,%r14,8), %r16w
// CHECK: movrsw 291(%r17,%rax,4), %bx
// CHECK: encoding: [0x62,0xfc,0x7d,0x08,0x8b,0x9c,0x81,0x23,0x01,0x00,0x00]
movrs 291(%r17,%rax,4), %bx
// CHECK: {evex} movrsw (%rip), %bx
// CHECK: encoding: [0x62,0xf4,0x7d,0x08,0x8b,0x1d,0x00,0x00,0x00,0x00]
{evex} movrs (%rip), %bx
// CHECK: movrsw -32(,%rbp,2), %r18w
// CHECK: encoding: [0x62,0xe4,0x7d,0x08,0x8b,0x14,0x6d,0xe0,0xff,0xff,0xff]
movrs -32(,%rbp,2), %r18w
// CHECK: movrsw 127(%r19), %bx
// CHECK: encoding: [0x62,0xfc,0x7d,0x08,0x8b,0x5b,0x7f]
movrs 127(%r19), %bx
// CHECK: movrsw -128(%r20), %bx
// CHECK: encoding: [0x62,0xfc,0x7d,0x08,0x8b,0x5c,0x24,0x80]
movrs -128(%r20), %bx
// CHECK: movrsl 268435456(%rbp,%r14,8), %r16d
// CHECK: encoding: [0x62,0xa4,0x7c,0x08,0x8b,0x84,0xf5,0x00,0x00,0x00,0x10]
movrs 268435456(%rbp,%r14,8), %r16d
// CHECK: movrsl 291(%r17,%rax,4), %ebx
// CHECK: encoding: [0x62,0xfc,0x7c,0x08,0x8b,0x9c,0x81,0x23,0x01,0x00,0x00]
movrs 291(%r17,%rax,4), %ebx
// CHECK: {evex} movrsl (%rip), %ebx
// CHECK: encoding: [0x62,0xf4,0x7c,0x08,0x8b,0x1d,0x00,0x00,0x00,0x00]
{evex} movrs (%rip), %ebx
// CHECK: movrsl -32(,%rbp,2), %r18d
// CHECK: encoding: [0x62,0xe4,0x7c,0x08,0x8b,0x14,0x6d,0xe0,0xff,0xff,0xff]
movrs -32(,%rbp,2), %r18d
// CHECK: movrsl 127(%r19), %ebx
// CHECK: encoding: [0x62,0xfc,0x7c,0x08,0x8b,0x5b,0x7f]
movrs 127(%r19), %ebx
// CHECK: movrsl -128(%r20), %ebx
// CHECK: encoding: [0x62,0xfc,0x7c,0x08,0x8b,0x5c,0x24,0x80]
movrs -128(%r20), %ebx
// CHECK: movrsq 268435456(%rbp,%r14,8), %r16
// CHECK: encoding: [0x62,0xa4,0xfc,0x08,0x8b,0x84,0xf5,0x00,0x00,0x00,0x10]
movrs 268435456(%rbp,%r14,8), %r16
// CHECK: movrsq 291(%r17,%rax,4), %rbx
// CHECK: encoding: [0x62,0xfc,0xfc,0x08,0x8b,0x9c,0x81,0x23,0x01,0x00,0x00]
movrs 291(%r17,%rax,4), %rbx
// CHECK: {evex} movrsq (%rip), %rbx
// CHECK: encoding: [0x62,0xf4,0xfc,0x08,0x8b,0x1d,0x00,0x00,0x00,0x00]
{evex} movrs (%rip), %rbx
// CHECK: movrsq -32(,%rbp,2), %r18
// CHECK: encoding: [0x62,0xe4,0xfc,0x08,0x8b,0x14,0x6d,0xe0,0xff,0xff,0xff]
movrs -32(,%rbp,2), %r18
// CHECK: movrsq 127(%r19), %rbx
// CHECK: encoding: [0x62,0xfc,0xfc,0x08,0x8b,0x5b,0x7f]
movrs 127(%r19), %rbx
// CHECK: movrsq -128(%r20), %rbx
// CHECK: encoding: [0x62,0xfc,0xfc,0x08,0x8b,0x5c,0x24,0x80]
movrs -128(%r20), %rbx