[ARM] Better OR's for MVE compares
[llvm-core.git] / test / MC / AArch64 / shift_extend_op_w_symbol.s
blobd1008f0b8ef5a95de018542be7a2baa27b56fa6c
1 // RUN: not llvm-mc -triple aarch64-none-linux-gnu < %s > %t1 2> %t2
2 // RUN: FileCheck < %t1 %s
3 // RUN: FileCheck --check-prefix=CHECK-ERROR < %t2 %s
5 .globl _func
6 _func:
7 // CHECK-LABEL: _func
9 .set IMM2, 2
10 .equ IMM4, 4
12 // Make sure we can use a symbol with the optionally shift left operand.
14 add w1, w2, w3, uxtb #IMM2
15 add w4, w5, w6, uxth #IMM4
16 add x7, x8, x9, lsl #IMM2
17 add w7, w8, w9, uxtw #IMM4
18 add x1, x2, x3, uxtx #IMM4
20 // CHECK: add w1, w2, w3, uxtb #2
21 // CHECK: add w4, w5, w6, uxth #4
22 // CHECK: add x7, x8, x9, lsl #2
23 // CHECK: add w7, w8, w9, uxtw #4
24 // CHECK: add x1, x2, x3, uxtx #4
26 add w1, w2, w3, sxtb #IMM2
27 add w4, w5, w6, sxth #IMM4
28 add x7, x8, x9, lsl #IMM2
29 add w7, w8, w9, sxtw #IMM2
30 add x1, x2, x3, sxtx #IMM4
32 // CHECK: add w1, w2, w3, sxtb #2
33 // CHECK: add w4, w5, w6, sxth #4
34 // CHECK: add x7, x8, x9, lsl #2
35 // CHECK: add w7, w8, w9, sxtw #2
36 // CHECK: add x1, x2, x3, sxtx #4
38 add w1, w2, w3, lsl #IMM3
40 // CHECK-ERROR: error: expected constant '#imm' after shift specifier
41 // CHECK-ERROR: add w1, w2, w3, lsl #IMM3
42 // CHECK-ERROR: ^