|
1 |
| -// RUN: llvm-mc -triple aarch64-none-linux-gnu -show-encoding -mattr=+occmo -mattr=+mte %s | FileCheck %s |
2 |
| -// RUN: not llvm-mc -triple aarch64-none-linux-gnu -show-encoding %s -mattr=+mte 2>&1 | FileCheck --check-prefix=ERROR %s |
3 |
| -.func: |
4 |
| -// CHECK: .func: |
5 |
| - dc civaoc, x12 |
6 |
| -// CHECK: dc civaoc, x12 // encoding: [0x0c,0x7f,0x0b,0xd5] |
7 |
| -// ERROR: error: DC CIVAOC requires: occmo |
8 |
| - dc cigdvaoc, x0 |
9 |
| -// CHECK: dc cigdvaoc, x0 // encoding: [0xe0,0x7f,0x0b,0xd5] |
10 |
| -// ERROR: error: DC CIGDVAOC requires: mte, memtag, occmo |
11 |
| - dc cvaoc, x13 |
12 |
| -// CHECK: dc cvaoc, x13 // encoding: [0x0d,0x7b,0x0b,0xd5] |
13 |
| -// ERROR: error: DC CVAOC requires: occmo |
14 |
| - dc cgdvaoc, x1 |
15 |
| -// CHECK: dc cgdvaoc, x1 // encoding: [0xe1,0x7b,0x0b,0xd5] |
16 |
| -// ERROR: error: DC CGDVAOC requires: mte, memtag, occmo |
| 1 | +// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+occmo,+mte,+memtag < %s \ |
| 2 | +// RUN: | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST |
| 3 | +// RUN: not llvm-mc -triple=aarch64 -show-encoding < %s 2>&1 \ |
| 4 | +// RUN: | FileCheck %s --check-prefixes=CHECK-ERROR |
| 5 | +// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+occmo,+mte,+memtag < %s \ |
| 6 | +// RUN: | llvm-objdump -d --mattr=+occmo,+mte,+memtag --no-print-imm-hex - | FileCheck %s --check-prefix=CHECK-INST |
| 7 | +// RUN: llvm-mc -triple=aarch64 -filetype=obj -mattr=+occmo,+mte,+memtag < %s \ |
| 8 | +// RUN: | llvm-objdump -d --mattr=-occmo,-mte,-memtag --no-print-imm-hex - | FileCheck %s --check-prefix=CHECK-UNKNOWN |
| 9 | +// Disassemble encoding and check the re-encoding (-show-encoding) matches. |
| 10 | +// RUN: llvm-mc -triple=aarch64 -show-encoding -mattr=+occmo,+mte,+memtag < %s \ |
| 11 | +// RUN: | sed '/.text/d' | sed 's/.*encoding: //g' \ |
| 12 | +// RUN: | llvm-mc -triple=aarch64 -mattr=+occmo,+mte,+memtag -disassemble -show-encoding \ |
| 13 | +// RUN: | FileCheck %s --check-prefixes=CHECK-ENCODING,CHECK-INST |
17 | 14 |
|
| 15 | + |
| 16 | + |
| 17 | +dc civaoc, x12 |
| 18 | +// CHECK-INST: dc civaoc, x12 |
| 19 | +// CHECK-ENCODING: encoding: [0x0c,0x7f,0x0b,0xd5] |
| 20 | +// CHECK-ERROR: error: DC CIVAOC requires: occmo |
| 21 | +// CHECK-UNKNOWN: d50b7f0c sys #3, c7, c15, #0, x12 |
| 22 | +dc cigdvaoc, x0 |
| 23 | +// CHECK-INST: dc cigdvaoc, x0 |
| 24 | +// CHECK-ENCODING: encoding: [0xe0,0x7f,0x0b,0xd5] |
| 25 | +// CHECK-ERROR: error: DC CIGDVAOC requires: mte, memtag, occmo |
| 26 | +// CHECK-UNKNOWN: d50b7fe0 sys #3, c7, c15, #7, x0 |
| 27 | +// ERROR: :[[@LINE-3]]:4: error: DC CIGDVAOC requires: mte, memtag, occmo |
| 28 | +dc cvaoc, x13 |
| 29 | +// CHECK-INST: dc cvaoc, x13 |
| 30 | +// CHECK-ENCODING: encoding: [0x0d,0x7b,0x0b,0xd5] |
| 31 | +// CHECK-ERROR: error: DC CVAOC requires: occmo |
| 32 | +// CHECK-UNKNOWN: d50b7b0d sys #3, c7, c11, #0, x13 |
| 33 | +// ERROR: :[[@LINE-3]]:4: error: DC CVAOC requires: occmo |
| 34 | +dc cgdvaoc, x1 |
| 35 | +// CHECK-INST: dc cgdvaoc, x1 |
| 36 | +// CHECK-ENCODING: encoding: [0xe1,0x7b,0x0b,0xd5] |
| 37 | +// CHECK-ERROR: error: DC CGDVAOC requires: mte, memtag, occmo |
| 38 | +// CHECK-UNKNOWN: d50b7be1 sys #3, c7, c11, #7, x1 |
| 39 | +// ERROR: :[[@LINE-3]]:4: error: DC CGDVAOC requires: mte, memtag, occmo |
0 commit comments