| # RUN: llvm-mc -triple=aarch64 -disassemble < %s 2>&1 | FileCheck %s |
| |
| #------------------------------------------------------------------------------ |
| # Load-store exclusive |
| #------------------------------------------------------------------------------ |
| |
| #ldxp x14, x14, [sp] |
| 0xee 0x3b 0x7f 0xc8 |
| #CHECK: warning: potentially undefined instruction encoding |
| #CHECK-NEXT: 0xee 0x3b 0x7f 0xc8 |
| |
| #ldaxp w19, w19, [x1] |
| 0x33 0xcc 0x7f 0x88 |
| #CHECK: warning: potentially undefined instruction encoding |
| #CHECK-NEXT: 0x33 0xcc 0x7f 0x88 |
| |
| #------------------------------------------------------------------------------ |
| # Load-store register (immediate post-indexed) |
| #------------------------------------------------------------------------------ |
| |
| 0x63 0x44 0x40 0xf8 |
| #CHECK: warning: potentially undefined instruction encoding |
| #CHECK-NEXT: 0x63 0x44 0x40 0xf8 |
| |
| 0x42 0x14 0xc0 0x38 |
| #CHECK: warning: potentially undefined instruction encoding |
| #CHECK-NEXT: 0x42 0x14 0xc0 0x38 |
| |
| #------------------------------------------------------------------------------ |
| # Load-store register (immediate pre-indexed) |
| #------------------------------------------------------------------------------ |
| |
| 0x63 0x4c 0x40 0xf8 |
| #CHECK: warning: potentially undefined instruction encoding |
| #CHECK-NEXT: 0x63 0x4c 0x40 0xf8 |
| |
| 0x42 0x1c 0xc0 0x38 |
| #CHECK: warning: potentially undefined instruction encoding |
| #CHECK-NEXT: 0x42 0x1c 0xc0 0x38 |
| |
| #------------------------------------------------------------------------------ |
| # Load-store register pair (offset) |
| #------------------------------------------------------------------------------ |
| |
| # Unpredictable if Rt == Rt2 on a load. |
| |
| 0xe3 0x0f 0x40 0xa9 |
| # CHECK: warning: potentially undefined instruction encoding |
| # CHECK-NEXT: 0xe3 0x0f 0x40 0xa9 |
| # CHECK-NEXT: ^ |
| |
| 0xe2 0x8b 0x41 0x69 |
| # CHECK: warning: potentially undefined instruction encoding |
| # CHECK-NEXT: 0xe2 0x8b 0x41 0x69 |
| # CHECK-NEXT: ^ |
| |
| 0x82 0x88 0x40 0x2d |
| # CHECK: warning: potentially undefined instruction encoding |
| # CHECK-NEXT: 0x82 0x88 0x40 0x2d |
| # CHECK-NEXT: ^ |
| |
| #------------------------------------------------------------------------------ |
| # Load-store register pair (post-indexed) |
| #------------------------------------------------------------------------------ |
| |
| # Unpredictable if Rt == Rt2 on a load. |
| |
| 0xe3 0x0f 0xc0 0xa8 |
| # CHECK: warning: potentially undefined instruction encoding |
| # CHECK-NEXT: 0xe3 0x0f 0xc0 0xa8 |
| # CHECK-NEXT: ^ |
| |
| 0xe2 0x8b 0xc1 0x68 |
| # CHECK: warning: potentially undefined instruction encoding |
| # CHECK-NEXT: 0xe2 0x8b 0xc1 0x68 |
| # CHECK-NEXT: ^ |
| |
| 0x82 0x88 0xc0 0x2c |
| # CHECK: warning: potentially undefined instruction encoding |
| # CHECK-NEXT: 0x82 0x88 0xc0 0x2c |
| # CHECK-NEXT: ^ |
| |
| # Also unpredictable if writeback clashes with either transfer register |
| |
| 0x63 0x94 0xc0 0xa8 |
| # CHECK: warning: potentially undefined instruction encoding |
| # CHECK-NEXT: 0x63 0x94 0xc0 0xa8 |
| |
| 0x69 0x2d 0x81 0xa8 |
| # CHECK: warning: potentially undefined instruction encoding |
| # CHECK-NEXT: 0x69 0x2d 0x81 0xa8 |
| |
| 0x29 0xad 0xc0 0x28 |
| # CHECK: warning: potentially undefined instruction encoding |
| # CHECK-NEXT: 0x29 0xad 0xc0 0x28 |
| |