|
7 | 7 | // RUN: not llvm-mc -triple aarch64-none-linux-gnu -mcpu=tsv110 -show-encoding < %s 2> %t | FileCheck %s |
8 | 8 | // RUN: FileCheck -check-prefix=CHECK-ERROR < %t %s |
9 | 9 | // RUN: not llvm-mc -triple aarch64-none-linux-gnu -mattr=+v8r -show-encoding < %s 2> %t | FileCheck %s |
| 10 | +// RUN: FileCheck -check-prefix=CHECK-ERROR < %t %s |
| 11 | +// RUN: not llvm-mc -triple aarch64-none-linux-gnu -mattr=+v8.1a,+lse,+lsui -show-encoding < %s 2> %t | FileCheck %s -check-prefix=CHECK-FEAT-LSUI |
10 | 12 | // RUN: FileCheck -check-prefix=CHECK-ERROR < %t %s |
11 | 13 | .text |
12 | 14 |
|
|
78 | 80 | // CHECK: casal x0, x1, [x2] // encoding: [0x41,0xfc,0xe0,0xc8] |
79 | 81 | // CHECK: casal x2, x3, [sp] // encoding: [0xe3,0xff,0xe2,0xc8] |
80 | 82 |
|
| 83 | + // CHECK-FEAT-LSUI: cast x0, x1, [x2] // encoding: [0x41,0x7c,0xa0,0xc8] |
| 84 | + // CHECK-FEAT-LSUI: cast x2, x3, [sp] // encoding: [0xe3,0x7f,0xa2,0xc8] |
| 85 | + // CHECK-FEAT-LSUI: casat x0, x1, [x2] // encoding: [0x41,0x7c,0xe0,0xc8] |
| 86 | + // CHECK-FEAT-LSUI: casat x2, x3, [sp] // encoding: [0xe3,0x7f,0xe2,0xc8] |
| 87 | + // CHECK-FEAT-LSUI: caslt x0, x1, [x2] // encoding: [0x41,0xfc,0xa0,0xc8] |
| 88 | + // CHECK-FEAT-LSUI: caslt x2, x3, [sp] // encoding: [0xe3,0xff,0xa2,0xc8] |
| 89 | + // CHECK-FEAT-LSUI: casalt x0, x1, [x2] // encoding: [0x41,0xfc,0xe0,0xc8] |
| 90 | + // CHECK-FEAT-LSUI: casalt x2, x3, [sp] // encoding: [0xe3,0xff,0xe2,0xc8] |
| 91 | + |
81 | 92 | swp w0, w1, [x2] |
82 | 93 | swp w2, w3, [sp] |
83 | 94 | swpa w0, w1, [x2] |
|
95 | 106 | // CHECK: swpal w0, w1, [x2] // encoding: [0x41,0x80,0xe0,0xb8] |
96 | 107 | // CHECK: swpal w2, w3, [sp] // encoding: [0xe3,0x83,0xe2,0xb8] |
97 | 108 |
|
| 109 | + // CHECK-FEAT-LSUI: swpt w0, w1, [x2] // encoding: [0x41,0x84,0x20,0x19] |
| 110 | + // CHECK-FEAT-LSUI: swpt w2, w3, [sp] // encoding: [0xe3,0x87,0x22,0x19] |
| 111 | + // CHECK-FEAT-LSUI: swpta w0, w1, [x2] // encoding: [0x41,0x84,0xa0,0x19] |
| 112 | + // CHECK-FEAT-LSUI: swpta w2, w3, [sp] // encoding: [0xe3,0x87,0xa2,0x19] |
| 113 | + // CHECK-FEAT-LSUI: swptl w0, w1, [x2] // encoding: [0x41,0x84,0x60,0x19] |
| 114 | + // CHECK-FEAT-LSUI: swptl w2, w3, [sp] // encoding: [0xe3,0x87,0x62,0x19] |
| 115 | + // CHECK-FEAT-LSUI: swptal w0, w1, [x2] // encoding: [0x41,0x84,0xe0,0x19] |
| 116 | + // CHECK-FEAT-LSUI: swptal w2, w3, [sp] // encoding: [0xe3,0x87,0xe2,0x19] |
| 117 | + |
98 | 118 | swpb w0, w1, [x2] |
99 | 119 | swpb w2, w3, [sp] |
100 | 120 | swph w0, w1, [x2] |
|
112 | 132 | // CHECK: swplb w0, w1, [x2] // encoding: [0x41,0x80,0x60,0x38] |
113 | 133 | // CHECK: swplb w2, w3, [sp] // encoding: [0xe3,0x83,0x62,0x38] |
114 | 134 |
|
| 135 | + // CHECK-FEAT-LSUI: swpt x0, x1, [x2] // encoding: [0x41,0x84,0x20,0x59] |
| 136 | + // CHECK-FEAT-LSUI: swpt x2, x3, [sp] // encoding: [0xe3,0x87,0x22,0x59] |
| 137 | + // CHECK-FEAT-LSUI: swpta x0, x1, [x2] // encoding: [0x41,0x84,0xa0,0x59] |
| 138 | + // CHECK-FEAT-LSUI: swpta x2, x3, [sp] // encoding: [0xe3,0x87,0xa2,0x59] |
| 139 | + // CHECK-FEAT-LSUI: swptl x0, x1, [x2] // encoding: [0x41,0x84,0x60,0x59] |
| 140 | + // CHECK-FEAT-LSUI: swptl x2, x3, [sp] // encoding: [0xe3,0x87,0x62,0x59] |
| 141 | + // CHECK-FEAT-LSUI: swptal x0, x1, [x2] // encoding: [0x41,0x84,0xe0,0x59] |
| 142 | + // CHECK-FEAT-LSUI: swptal x2, x3, [sp] // encoding: [0xe3,0x87,0xe2,0x59] |
| 143 | + |
115 | 144 | swpalb w0, w1, [x2] |
116 | 145 | swpalb w2, w3, [sp] |
117 | 146 | swpah w0, w1, [x2] |
|
163 | 192 | // CHECK: caspa x0, x1, x2, x3, [x2] // encoding: [0x42,0x7c,0x60,0x48] |
164 | 193 | // CHECK: caspa x4, x5, x6, x7, [sp] // encoding: [0xe6,0x7f,0x64,0x48] |
165 | 194 |
|
| 195 | + // CHECK-FEAT-LSUI: casp w0, w1, w2, w3, [x5] // encoding: [0xa2,0x7c,0x20,0x08] |
| 196 | + // CHECK-FEAT-LSUI: casp w4, w5, w6, w7, [sp] // encoding: [0xe6,0x7f,0x24,0x08] |
| 197 | + // CHECK-FEAT-LSUI: caspt x0, x1, x2, x3, [x2] // encoding: [0x42,0x7c,0x20,0x48] |
| 198 | + // CHECK-FEAT-LSUI: caspt x4, x5, x6, x7, [sp] // encoding: [0xe6,0x7f,0x24,0x48] |
| 199 | + // CHECK-FEAT-LSUI: caspa w0, w1, w2, w3, [x5] // encoding: [0xa2,0x7c,0x60,0x08] |
| 200 | + // CHECK-FEAT-LSUI: caspa w4, w5, w6, w7, [sp] // encoding: [0xe6,0x7f,0x64,0x08] |
| 201 | + // CHECK-FEAT-LSUI: caspat x0, x1, x2, x3, [x2] // encoding: [0x42,0x7c,0x60,0x48] |
| 202 | + // CHECK-FEAT-LSUI: caspat x4, x5, x6, x7, [sp] // encoding: [0xe6,0x7f,0x64,0x48] |
| 203 | + |
166 | 204 | caspl w0, w1, w2, w3, [x5] |
167 | 205 | caspl w4, w5, w6, w7, [sp] |
168 | 206 | caspl x0, x1, x2, x3, [x2] |
|
180 | 218 | // CHECK: caspal x0, x1, x2, x3, [x2] // encoding: [0x42,0xfc,0x60,0x48] |
181 | 219 | // CHECK: caspal x4, x5, x6, x7, [sp] // encoding: [0xe6,0xff,0x64,0x48] |
182 | 220 |
|
| 221 | + // CHECK-FEAT-LSUI: caspl w0, w1, w2, w3, [x5] // encoding: [0xa2,0xfc,0x20,0x08] |
| 222 | + // CHECK-FEAT-LSUI: caspl w4, w5, w6, w7, [sp] // encoding: [0xe6,0xff,0x24,0x08] |
| 223 | + // CHECK-FEAT-LSUI: casplt x0, x1, x2, x3, [x2] // encoding: [0x42,0xfc,0x20,0x48] |
| 224 | + // CHECK-FEAT-LSUI: casplt x4, x5, x6, x7, [sp] // encoding: [0xe6,0xff,0x24,0x48] |
| 225 | + // CHECK-FEAT-LSUI: caspal w0, w1, w2, w3, [x5] // encoding: [0xa2,0xfc,0x60,0x08] |
| 226 | + // CHECK-FEAT-LSUI: caspal w4, w5, w6, w7, [sp] // encoding: [0xe6,0xff,0x64,0x08] |
| 227 | + // CHECK-FEAT-LSUI: caspalt x0, x1, x2, x3, [x2] // encoding: [0x42,0xfc,0x60,0x48] |
| 228 | + // CHECK-FEAT-LSUI: caspalt x4, x5, x6, x7, [sp] // encoding: [0xe6,0xff,0x64,0x48] |
| 229 | + |
183 | 230 | ldadd w0, w1, [x2] |
184 | 231 | ldadd w2, w3, [sp] |
185 | 232 | ldadda w0, w1, [x2] |
|
0 commit comments