basic-a64-diagnostics.s revision 87773c318fcee853fb34a80a10c4347d523bdafb
187773c318fcee853fb34a80a10c4347d523bdafbTim Northover// RUN: not llvm-mc -triple aarch64-none-linux-gnu < %s 2> %t
2c37aa995e3e55c1bdb17a73c3160edf0426b1a1aTim Northover// RUN: FileCheck --check-prefix=CHECK-ERROR < %t %s
372062f5744557e270a38192554c3126ea5f97434Tim Northover
472062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
572062f5744557e270a38192554c3126ea5f97434Tim Northover// Add/sub (extended register)
672062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
772062f5744557e270a38192554c3126ea5f97434Tim Northover
872062f5744557e270a38192554c3126ea5f97434Tim Northover        // Mismatched final register and extend
972062f5744557e270a38192554c3126ea5f97434Tim Northover        add x2, x3, x5, sxtb
1072062f5744557e270a38192554c3126ea5f97434Tim Northover        add x2, x4, w2, uxtx
1172062f5744557e270a38192554c3126ea5f97434Tim Northover        add w5, w7, x9, sxtx
12b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
1372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR:         add x2, x3, x5, sxtb
1472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR:                         ^
15b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected '[su]xt[bhw]' or 'lsl' with optional integer in range [0, 4]
1672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR:         add x2, x4, w2, uxtx
1772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR:                         ^
18b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected compatible register, symbol or integer in range [0, 4095]
1972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR:         add w5, w7, x9, sxtx
2072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR:                     ^
2172062f5744557e270a38192554c3126ea5f97434Tim Northover
2272062f5744557e270a38192554c3126ea5f97434Tim Northover        // Out of range extends
2372062f5744557e270a38192554c3126ea5f97434Tim Northover        add x9, x10, w11, uxtb #-1
2472062f5744557e270a38192554c3126ea5f97434Tim Northover        add x3, x5, w7, uxtb #5
2572062f5744557e270a38192554c3126ea5f97434Tim Northover        sub x9, x15, x2, uxth #5
2672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: expected integer shift amount
2772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR:         add x9, x10, w11, uxtb #-1
2872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR:                                 ^
29b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected '[su]xt[bhw]' or 'lsl' with optional integer in range [0, 4]
3072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR:         add x3, x5, w7, uxtb #5
3172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR:                         ^
32b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
3372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR:         sub x9, x15, x2, uxth #5
3472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR:                          ^
3572062f5744557e270a38192554c3126ea5f97434Tim Northover
3672062f5744557e270a38192554c3126ea5f97434Tim Northover        // Wrong registers on normal variants
3772062f5744557e270a38192554c3126ea5f97434Tim Northover        add xzr, x3, x5, uxtx
3872062f5744557e270a38192554c3126ea5f97434Tim Northover        sub x3, xzr, w9, sxth #1
3972062f5744557e270a38192554c3126ea5f97434Tim Northover        add x1, x2, sp, uxtx
40b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected 'lsl', 'lsr' or 'asr' with optional integer in range [0, 63]
4172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR:         add xzr, x3, x5, uxtx
42b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR:                          ^
4372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
4472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR:         sub x3, xzr, w9, sxth #1
4572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR:                 ^
46b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected compatible register, symbol or integer in range [0, 4095]
4772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR:         add x1, x2, sp, uxtx
4872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR:                     ^
4972062f5744557e270a38192554c3126ea5f97434Tim Northover
5072062f5744557e270a38192554c3126ea5f97434Tim Northover        // Wrong registers on flag-setting variants
5172062f5744557e270a38192554c3126ea5f97434Tim Northover        adds sp, x3, w2, uxtb
5272062f5744557e270a38192554c3126ea5f97434Tim Northover        adds x3, xzr, x9, uxtx
5372062f5744557e270a38192554c3126ea5f97434Tim Northover        subs x2, x1, sp, uxtx
5472062f5744557e270a38192554c3126ea5f97434Tim Northover        adds x2, x1, sp, uxtb #2
5572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
5672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR:         adds sp, x3, w2, uxtb
5772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR:              ^
58b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected 'lsl', 'lsr' or 'asr' with optional integer in range [0, 63]
5972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR:         adds x3, xzr, x9, uxtx
60b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR:                           ^
61b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected compatible register, symbol or integer in range [0, 4095]
6272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR:         subs x2, x1, sp, uxtx
6372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR:                      ^
64b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected compatible register, symbol or integer in range [0, 4095]
6572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR:         adds x2, x1, sp, uxtb #2
6672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR:                      ^
6772062f5744557e270a38192554c3126ea5f97434Tim Northover
6872062f5744557e270a38192554c3126ea5f97434Tim Northover        // Amount not optional if lsl valid and used
6972062f5744557e270a38192554c3126ea5f97434Tim Northover        add sp, x5, x7, lsl
7072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: expected #imm after shift specifier
7172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR:         add sp, x5, x7, lsl
7272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR:                             ^
7372062f5744557e270a38192554c3126ea5f97434Tim Northover
7472062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
7572062f5744557e270a38192554c3126ea5f97434Tim Northover// Add/sub (immediate)
7672062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
7772062f5744557e270a38192554c3126ea5f97434Tim Northover
7872062f5744557e270a38192554c3126ea5f97434Tim Northover// Out of range immediates: < 0 or more than 12 bits
7972062f5744557e270a38192554c3126ea5f97434Tim Northover        add w4, w5, #-1
8072062f5744557e270a38192554c3126ea5f97434Tim Northover        add w5, w6, #0x1000
8172062f5744557e270a38192554c3126ea5f97434Tim Northover        add w4, w5, #-1, lsl #12
8272062f5744557e270a38192554c3126ea5f97434Tim Northover        add w5, w6, #0x1000, lsl #12
83b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected compatible register, symbol or integer in range [0, 4095]
8472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         add w4, w5, #-1
8572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
86b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected compatible register, symbol or integer in range [0, 4095]
8772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         add w5, w6, #0x1000
8872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
89b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected compatible register, symbol or integer in range [0, 4095]
9072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         add w4, w5, #-1, lsl #12
9172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
92b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected compatible register, symbol or integer in range [0, 4095]
9372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         add w5, w6, #0x1000, lsl #12
9472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
9572062f5744557e270a38192554c3126ea5f97434Tim Northover
9672062f5744557e270a38192554c3126ea5f97434Tim Northover// Only lsl #0 and lsl #12 are allowed
9772062f5744557e270a38192554c3126ea5f97434Tim Northover        add w2, w3, #0x1, lsl #1
9872062f5744557e270a38192554c3126ea5f97434Tim Northover        add w5, w17, #0xfff, lsl #13
9972062f5744557e270a38192554c3126ea5f97434Tim Northover        add w17, w20, #0x1000, lsl #12
10072062f5744557e270a38192554c3126ea5f97434Tim Northover        sub xsp, x34, #0x100, lsl #-1
101b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected compatible register, symbol or integer in range [0, 4095]
10272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         add w2, w3, #0x1, lsl #1
10372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                                ^
104b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected compatible register, symbol or integer in range [0, 4095]
10572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         add w5, w17, #0xfff, lsl #13
10672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                                   ^
107b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected compatible register, symbol or integer in range [0, 4095]
10872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         add w17, w20, #0x1000, lsl #12
10972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
11072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: only 'lsl #+N' valid after immediate
11172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sub xsp, x34, #0x100, lsl #-1
11272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                                    ^
11372062f5744557e270a38192554c3126ea5f97434Tim Northover
11472062f5744557e270a38192554c3126ea5f97434Tim Northover// Incorrect registers (w31 doesn't exist at all, and 31 decodes to sp for these).
11572062f5744557e270a38192554c3126ea5f97434Tim Northover        add w31, w20, #1234
11672062f5744557e270a38192554c3126ea5f97434Tim Northover        add wzr, w20, #0x123
11772062f5744557e270a38192554c3126ea5f97434Tim Northover        add w20, wzr, #0x321
11872062f5744557e270a38192554c3126ea5f97434Tim Northover        add wzr, wzr, #0xfff
11972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
12072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         add w31, w20, #1234
12172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
12272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
12372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         add wzr, w20, #0x123
12472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
12572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
12672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         add w20, wzr, #0x321
12772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
12872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
12972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         add wzr, wzr, #0xfff
13072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
13172062f5744557e270a38192554c3126ea5f97434Tim Northover
13272062f5744557e270a38192554c3126ea5f97434Tim Northover// Mixed register classes
13372062f5744557e270a38192554c3126ea5f97434Tim Northover        add xsp, w2, #123
13472062f5744557e270a38192554c3126ea5f97434Tim Northover        sub w2, x30, #32
13572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
13672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         add xsp, w2, #123
13772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
13872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
13972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sub w2, x30, #32
14072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
14172062f5744557e270a38192554c3126ea5f97434Tim Northover
14272062f5744557e270a38192554c3126ea5f97434Tim Northover// Out of range immediate
14372062f5744557e270a38192554c3126ea5f97434Tim Northover        adds w0, w5, #0x10000
144b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected compatible register, symbol or integer in range [0, 4095]
14572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         adds w0, w5, #0x10000
14672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
14772062f5744557e270a38192554c3126ea5f97434Tim Northover
14872062f5744557e270a38192554c3126ea5f97434Tim Northover// Wn|WSP should be in second place
14972062f5744557e270a38192554c3126ea5f97434Tim Northover        adds w4, wzr, #0x123
15072062f5744557e270a38192554c3126ea5f97434Tim Northover// ...but wzr is the 31 destination
15172062f5744557e270a38192554c3126ea5f97434Tim Northover        subs wsp, w5, #123
15272062f5744557e270a38192554c3126ea5f97434Tim Northover        subs x5, xzr, #0x456, lsl #12
15372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
15472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         adds w4, wzr, #0x123
15572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
15672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
15772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         subs wsp, w5, #123
15872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
15972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
16072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         subs x5, xzr, #0x456, lsl #12
16172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
16272062f5744557e270a38192554c3126ea5f97434Tim Northover
16372062f5744557e270a38192554c3126ea5f97434Tim Northover        // MOV alias should not accept any fiddling
16472062f5744557e270a38192554c3126ea5f97434Tim Northover        mov x2, xsp, #123
16572062f5744557e270a38192554c3126ea5f97434Tim Northover        mov wsp, w27, #0xfff, lsl #12
166b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected compatible register or logical immediate
16772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         mov x2, xsp, #123
16872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
16972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
17072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         mov wsp, w27, #0xfff, lsl #12
17172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
17272062f5744557e270a38192554c3126ea5f97434Tim Northover
17372062f5744557e270a38192554c3126ea5f97434Tim Northover        // A relocation should be provided for symbols
17472062f5744557e270a38192554c3126ea5f97434Tim Northover        add x3, x9, #variable
175b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected compatible register, symbol or integer in range [0, 4095]
17672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         add x3, x9, #variable
17772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
17872062f5744557e270a38192554c3126ea5f97434Tim Northover
17972062f5744557e270a38192554c3126ea5f97434Tim Northover
18072062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
18172062f5744557e270a38192554c3126ea5f97434Tim Northover// Add-subtract (shifted register)
18272062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
18372062f5744557e270a38192554c3126ea5f97434Tim Northover
18472062f5744557e270a38192554c3126ea5f97434Tim Northover        add wsp, w1, w2, lsr #3
18572062f5744557e270a38192554c3126ea5f97434Tim Northover        add x4, sp, x9, asr #5
18672062f5744557e270a38192554c3126ea5f97434Tim Northover        add x9, x10, x5, ror #3
187b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
18872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         add wsp, w1, w2, lsr #3
18972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                          ^
190b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
19172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         add x4, sp, x9, asr #5
19272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
193b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
19472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         add x9, x10, x5, ror #3
19572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                          ^
19672062f5744557e270a38192554c3126ea5f97434Tim Northover
19772062f5744557e270a38192554c3126ea5f97434Tim Northover        add w1, w2, w3, lsl #-1
19872062f5744557e270a38192554c3126ea5f97434Tim Northover        add w1, w2, w3, lsl #32
19972062f5744557e270a38192554c3126ea5f97434Tim Northover        add w1, w2, w3, lsr #-1
20072062f5744557e270a38192554c3126ea5f97434Tim Northover        add w1, w2, w3, lsr #32
20172062f5744557e270a38192554c3126ea5f97434Tim Northover        add w1, w2, w3, asr #-1
20272062f5744557e270a38192554c3126ea5f97434Tim Northover        add w1, w2, w3, asr #32
20372062f5744557e270a38192554c3126ea5f97434Tim Northover        add x1, x2, x3, lsl #-1
20472062f5744557e270a38192554c3126ea5f97434Tim Northover        add x1, x2, x3, lsl #64
20572062f5744557e270a38192554c3126ea5f97434Tim Northover        add x1, x2, x3, lsr #-1
20672062f5744557e270a38192554c3126ea5f97434Tim Northover        add x1, x2, x3, lsr #64
20772062f5744557e270a38192554c3126ea5f97434Tim Northover        add x1, x2, x3, asr #-1
20872062f5744557e270a38192554c3126ea5f97434Tim Northover        add x1, x2, x3, asr #64
20972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: expected integer shift amount
21072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         add w1, w2, w3, lsl #-1
21172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                              ^
212b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
21372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         add w1, w2, w3, lsl #32
21472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
21572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
21672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         add w1, w2, w3, lsr #-1
21772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                              ^
218b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
21972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         add w1, w2, w3, lsr #32
22072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
22172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
22272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         add w1, w2, w3, asr #-1
22372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                              ^
224b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
22572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         add w1, w2, w3, asr #32
22672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
22772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
22872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         add x1, x2, x3, lsl #-1
22972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                              ^
230b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
23172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         add x1, x2, x3, lsl #64
23272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
23372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
23472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         add x1, x2, x3, lsr #-1
23572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                              ^
236b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
23772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         add x1, x2, x3, lsr #64
23872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
23972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
24072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         add x1, x2, x3, asr #-1
24172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                              ^
242b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
24372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         add x1, x2, x3, asr #64
24472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
24572062f5744557e270a38192554c3126ea5f97434Tim Northover
24672062f5744557e270a38192554c3126ea5f97434Tim Northover        adds w1, w2, w3, lsl #-1
24772062f5744557e270a38192554c3126ea5f97434Tim Northover        adds w1, w2, w3, lsl #32
24872062f5744557e270a38192554c3126ea5f97434Tim Northover        adds w1, w2, w3, lsr #-1
24972062f5744557e270a38192554c3126ea5f97434Tim Northover        adds w1, w2, w3, lsr #32
25072062f5744557e270a38192554c3126ea5f97434Tim Northover        adds w1, w2, w3, asr #-1
25172062f5744557e270a38192554c3126ea5f97434Tim Northover        adds w1, w2, w3, asr #32
25272062f5744557e270a38192554c3126ea5f97434Tim Northover        adds x1, x2, x3, lsl #-1
25372062f5744557e270a38192554c3126ea5f97434Tim Northover        adds x1, x2, x3, lsl #64
25472062f5744557e270a38192554c3126ea5f97434Tim Northover        adds x1, x2, x3, lsr #-1
25572062f5744557e270a38192554c3126ea5f97434Tim Northover        adds x1, x2, x3, lsr #64
25672062f5744557e270a38192554c3126ea5f97434Tim Northover        adds x1, x2, x3, asr #-1
25772062f5744557e270a38192554c3126ea5f97434Tim Northover        adds x1, x2, x3, asr #64
25872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: expected integer shift amount
25972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         adds w1, w2, w3, lsl #-1
26072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                               ^
261b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
26272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         adds w1, w2, w3, lsl #32
26372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                          ^
26472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
26572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         adds w1, w2, w3, lsr #-1
26672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                               ^
267b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
26872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         adds w1, w2, w3, lsr #32
26972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                          ^
27072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
27172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         adds w1, w2, w3, asr #-1
27272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                               ^
273b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
27472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         adds w1, w2, w3, asr #32
27572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                          ^
27672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
27772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         adds x1, x2, x3, lsl #-1
27872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                               ^
279b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
28072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         adds x1, x2, x3, lsl #64
28172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                          ^
28272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
28372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         adds x1, x2, x3, lsr #-1
28472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                               ^
285b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
28672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         adds x1, x2, x3, lsr #64
28772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                          ^
28872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
28972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         adds x1, x2, x3, asr #-1
29072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                               ^
291b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
29272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         adds x1, x2, x3, asr #64
29372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                          ^
29472062f5744557e270a38192554c3126ea5f97434Tim Northover
29572062f5744557e270a38192554c3126ea5f97434Tim Northover        sub w1, w2, w3, lsl #-1
29672062f5744557e270a38192554c3126ea5f97434Tim Northover        sub w1, w2, w3, lsl #32
29772062f5744557e270a38192554c3126ea5f97434Tim Northover        sub w1, w2, w3, lsr #-1
29872062f5744557e270a38192554c3126ea5f97434Tim Northover        sub w1, w2, w3, lsr #32
29972062f5744557e270a38192554c3126ea5f97434Tim Northover        sub w1, w2, w3, asr #-1
30072062f5744557e270a38192554c3126ea5f97434Tim Northover        sub w1, w2, w3, asr #32
30172062f5744557e270a38192554c3126ea5f97434Tim Northover        sub x1, x2, x3, lsl #-1
30272062f5744557e270a38192554c3126ea5f97434Tim Northover        sub x1, x2, x3, lsl #64
30372062f5744557e270a38192554c3126ea5f97434Tim Northover        sub x1, x2, x3, lsr #-1
30472062f5744557e270a38192554c3126ea5f97434Tim Northover        sub x1, x2, x3, lsr #64
30572062f5744557e270a38192554c3126ea5f97434Tim Northover        sub x1, x2, x3, asr #-1
30672062f5744557e270a38192554c3126ea5f97434Tim Northover        sub x1, x2, x3, asr #64
30772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: expected integer shift amount
30872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sub w1, w2, w3, lsl #-1
30972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                              ^
310b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
31172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sub w1, w2, w3, lsl #32
31272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
31372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
31472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sub w1, w2, w3, lsr #-1
31572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                              ^
316b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
31772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sub w1, w2, w3, lsr #32
31872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
31972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
32072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sub w1, w2, w3, asr #-1
32172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                              ^
322b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
32372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sub w1, w2, w3, asr #32
32472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
32572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
32672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sub x1, x2, x3, lsl #-1
32772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                              ^
328b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
32972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sub x1, x2, x3, lsl #64
33072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
33172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
33272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sub x1, x2, x3, lsr #-1
33372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                              ^
334b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
33572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sub x1, x2, x3, lsr #64
33672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
33772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
33872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sub x1, x2, x3, asr #-1
33972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                              ^
340b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
34172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sub x1, x2, x3, asr #64
34272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
34372062f5744557e270a38192554c3126ea5f97434Tim Northover
34472062f5744557e270a38192554c3126ea5f97434Tim Northover        subs w1, w2, w3, lsl #-1
34572062f5744557e270a38192554c3126ea5f97434Tim Northover        subs w1, w2, w3, lsl #32
34672062f5744557e270a38192554c3126ea5f97434Tim Northover        subs w1, w2, w3, lsr #-1
34772062f5744557e270a38192554c3126ea5f97434Tim Northover        subs w1, w2, w3, lsr #32
34872062f5744557e270a38192554c3126ea5f97434Tim Northover        subs w1, w2, w3, asr #-1
34972062f5744557e270a38192554c3126ea5f97434Tim Northover        subs w1, w2, w3, asr #32
35072062f5744557e270a38192554c3126ea5f97434Tim Northover        subs x1, x2, x3, lsl #-1
35172062f5744557e270a38192554c3126ea5f97434Tim Northover        subs x1, x2, x3, lsl #64
35272062f5744557e270a38192554c3126ea5f97434Tim Northover        subs x1, x2, x3, lsr #-1
35372062f5744557e270a38192554c3126ea5f97434Tim Northover        subs x1, x2, x3, lsr #64
35472062f5744557e270a38192554c3126ea5f97434Tim Northover        subs x1, x2, x3, asr #-1
35572062f5744557e270a38192554c3126ea5f97434Tim Northover        subs x1, x2, x3, asr #64
35672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: expected integer shift amount
35772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         subs w1, w2, w3, lsl #-1
35872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                               ^
359b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
36072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         subs w1, w2, w3, lsl #32
36172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                          ^
36272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
36372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         subs w1, w2, w3, lsr #-1
36472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                               ^
365b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
36672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         subs w1, w2, w3, lsr #32
36772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                          ^
36872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
36972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         subs w1, w2, w3, asr #-1
37072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                               ^
371b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
37272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         subs w1, w2, w3, asr #32
37372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                          ^
37472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
37572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         subs x1, x2, x3, lsl #-1
37672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                               ^
377b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
37872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         subs x1, x2, x3, lsl #64
37972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                          ^
38072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
38172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         subs x1, x2, x3, lsr #-1
38272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                               ^
383b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
38472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         subs x1, x2, x3, lsr #64
38572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                          ^
38672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
38772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         subs x1, x2, x3, asr #-1
38872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                               ^
389b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
39072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         subs x1, x2, x3, asr #64
39172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                          ^
39272062f5744557e270a38192554c3126ea5f97434Tim Northover
39372062f5744557e270a38192554c3126ea5f97434Tim Northover        cmn w9, w10, lsl #-1
39472062f5744557e270a38192554c3126ea5f97434Tim Northover        cmn w9, w10, lsl #32
39572062f5744557e270a38192554c3126ea5f97434Tim Northover        cmn w11, w12, lsr #-1
39672062f5744557e270a38192554c3126ea5f97434Tim Northover        cmn w11, w12, lsr #32
39772062f5744557e270a38192554c3126ea5f97434Tim Northover        cmn w19, wzr, asr #-1
39872062f5744557e270a38192554c3126ea5f97434Tim Northover        cmn wzr, wzr, asr #32
39972062f5744557e270a38192554c3126ea5f97434Tim Northover        cmn x9, x10, lsl #-1
40072062f5744557e270a38192554c3126ea5f97434Tim Northover        cmn x9, x10, lsl #64
40172062f5744557e270a38192554c3126ea5f97434Tim Northover        cmn x11, x12, lsr #-1
40272062f5744557e270a38192554c3126ea5f97434Tim Northover        cmn x11, x12, lsr #64
40372062f5744557e270a38192554c3126ea5f97434Tim Northover        cmn x19, xzr, asr #-1
40472062f5744557e270a38192554c3126ea5f97434Tim Northover        cmn xzr, xzr, asr #64
40572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: expected integer shift amount
40672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         cmn w9, w10, lsl #-1
40772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
408b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
40972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         cmn w9, w10, lsl #32
41072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
41172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
41272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         cmn w11, w12, lsr #-1
41372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                            ^
414b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
41572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         cmn w11, w12, lsr #32
41672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
41772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
41872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         cmn w19, wzr, asr #-1
41972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                            ^
420b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'lsl', 'lsr' or 'asr' with optional integer in range [0, 31]
42172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         cmn wzr, wzr, asr #32
42272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
42372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
42472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         cmn x9, x10, lsl #-1
42572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
426b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
42772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         cmn x9, x10, lsl #64
42872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
42972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
43072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         cmn x11, x12, lsr #-1
43172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                            ^
432b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
43372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         cmn x11, x12, lsr #64
43472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
43572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
43672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         cmn x19, xzr, asr #-1
43772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                            ^
438b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'lsl', 'lsr' or 'asr' with optional integer in range [0, 63]
43972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         cmn xzr, xzr, asr #64
44072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
44172062f5744557e270a38192554c3126ea5f97434Tim Northover
44272062f5744557e270a38192554c3126ea5f97434Tim Northover        cmp w9, w10, lsl #-1
44372062f5744557e270a38192554c3126ea5f97434Tim Northover        cmp w9, w10, lsl #32
44472062f5744557e270a38192554c3126ea5f97434Tim Northover        cmp w11, w12, lsr #-1
44572062f5744557e270a38192554c3126ea5f97434Tim Northover        cmp w11, w12, lsr #32
44672062f5744557e270a38192554c3126ea5f97434Tim Northover        cmp w19, wzr, asr #-1
44772062f5744557e270a38192554c3126ea5f97434Tim Northover        cmp wzr, wzr, asr #32
44872062f5744557e270a38192554c3126ea5f97434Tim Northover        cmp x9, x10, lsl #-1
44972062f5744557e270a38192554c3126ea5f97434Tim Northover        cmp x9, x10, lsl #64
45072062f5744557e270a38192554c3126ea5f97434Tim Northover        cmp x11, x12, lsr #-1
45172062f5744557e270a38192554c3126ea5f97434Tim Northover        cmp x11, x12, lsr #64
45272062f5744557e270a38192554c3126ea5f97434Tim Northover        cmp x19, xzr, asr #-1
45372062f5744557e270a38192554c3126ea5f97434Tim Northover        cmp xzr, xzr, asr #64
45472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: expected integer shift amount
45572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         cmp w9, w10, lsl #-1
45672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
457b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
45872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         cmp w9, w10, lsl #32
45972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
46072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
46172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         cmp w11, w12, lsr #-1
46272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                            ^
463b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
46472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         cmp w11, w12, lsr #32
46572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
46672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
46772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         cmp w19, wzr, asr #-1
46872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                            ^
469b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'lsl', 'lsr' or 'asr' with optional integer in range [0, 31]
47072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         cmp wzr, wzr, asr #32
47172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
47272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
47372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         cmp x9, x10, lsl #-1
47472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
475b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
47672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         cmp x9, x10, lsl #64
47772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
47872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
47972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         cmp x11, x12, lsr #-1
48072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                            ^
481b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'sxtx' 'uxtx' or 'lsl' with optional integer in range [0, 4]
48272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         cmp x11, x12, lsr #64
48372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
48472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
48572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         cmp x19, xzr, asr #-1
48672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                            ^
487b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'lsl', 'lsr' or 'asr' with optional integer in range [0, 63]
48872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         cmp xzr, xzr, asr #64
48972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
49072062f5744557e270a38192554c3126ea5f97434Tim Northover
49172062f5744557e270a38192554c3126ea5f97434Tim Northover        neg w9, w10, lsl #-1
49272062f5744557e270a38192554c3126ea5f97434Tim Northover        neg w9, w10, lsl #32
49372062f5744557e270a38192554c3126ea5f97434Tim Northover        neg w11, w12, lsr #-1
49472062f5744557e270a38192554c3126ea5f97434Tim Northover        neg w11, w12, lsr #32
49572062f5744557e270a38192554c3126ea5f97434Tim Northover        neg w19, wzr, asr #-1
49672062f5744557e270a38192554c3126ea5f97434Tim Northover        neg wzr, wzr, asr #32
49772062f5744557e270a38192554c3126ea5f97434Tim Northover        neg x9, x10, lsl #-1
49872062f5744557e270a38192554c3126ea5f97434Tim Northover        neg x9, x10, lsl #64
49972062f5744557e270a38192554c3126ea5f97434Tim Northover        neg x11, x12, lsr #-1
50072062f5744557e270a38192554c3126ea5f97434Tim Northover        neg x11, x12, lsr #64
50172062f5744557e270a38192554c3126ea5f97434Tim Northover        neg x19, xzr, asr #-1
50272062f5744557e270a38192554c3126ea5f97434Tim Northover        neg xzr, xzr, asr #64
50372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: expected integer shift amount
50472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         neg w9, w10, lsl #-1
50572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
506b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'lsl', 'lsr' or 'asr' with optional integer in range [0, 31]
50772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         neg w9, w10, lsl #32
50872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
50972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
51072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         neg w11, w12, lsr #-1
51172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                            ^
512b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'lsl', 'lsr' or 'asr' with optional integer in range [0, 31]
51372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         neg w11, w12, lsr #32
51472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
51572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
51672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         neg w19, wzr, asr #-1
51772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                            ^
518b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'lsl', 'lsr' or 'asr' with optional integer in range [0, 31]
51972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         neg wzr, wzr, asr #32
52072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
52172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
52272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         neg x9, x10, lsl #-1
52372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
524b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'lsl', 'lsr' or 'asr' with optional integer in range [0, 63]
52572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         neg x9, x10, lsl #64
52672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
52772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
52872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         neg x11, x12, lsr #-1
52972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                            ^
530b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'lsl', 'lsr' or 'asr' with optional integer in range [0, 63]
53172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         neg x11, x12, lsr #64
53272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
53372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
53472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         neg x19, xzr, asr #-1
53572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                            ^
536b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'lsl', 'lsr' or 'asr' with optional integer in range [0, 63]
53772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         neg xzr, xzr, asr #64
53872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
53972062f5744557e270a38192554c3126ea5f97434Tim Northover
54072062f5744557e270a38192554c3126ea5f97434Tim Northover        negs w9, w10, lsl #-1
54172062f5744557e270a38192554c3126ea5f97434Tim Northover        negs w9, w10, lsl #32
54272062f5744557e270a38192554c3126ea5f97434Tim Northover        negs w11, w12, lsr #-1
54372062f5744557e270a38192554c3126ea5f97434Tim Northover        negs w11, w12, lsr #32
54472062f5744557e270a38192554c3126ea5f97434Tim Northover        negs w19, wzr, asr #-1
54572062f5744557e270a38192554c3126ea5f97434Tim Northover        negs wzr, wzr, asr #32
54672062f5744557e270a38192554c3126ea5f97434Tim Northover        negs x9, x10, lsl #-1
54772062f5744557e270a38192554c3126ea5f97434Tim Northover        negs x9, x10, lsl #64
54872062f5744557e270a38192554c3126ea5f97434Tim Northover        negs x11, x12, lsr #-1
54972062f5744557e270a38192554c3126ea5f97434Tim Northover        negs x11, x12, lsr #64
55072062f5744557e270a38192554c3126ea5f97434Tim Northover        negs x19, xzr, asr #-1
55172062f5744557e270a38192554c3126ea5f97434Tim Northover        negs xzr, xzr, asr #64
55272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: expected integer shift amount
55372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         negs w9, w10, lsl #-1
55472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                            ^
555b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'lsl', 'lsr' or 'asr' with optional integer in range [0, 31]
55672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         negs w9, w10, lsl #32
55772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
55872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
55972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         negs w11, w12, lsr #-1
56072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                             ^
561b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'lsl', 'lsr' or 'asr' with optional integer in range [0, 31]
56272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         negs w11, w12, lsr #32
56372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
56472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
56572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         negs w19, wzr, asr #-1
56672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                             ^
567b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'lsl', 'lsr' or 'asr' with optional integer in range [0, 31]
56872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         negs wzr, wzr, asr #32
56972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
57072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
57172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         negs x9, x10, lsl #-1
57272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                            ^
573b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'lsl', 'lsr' or 'asr' with optional integer in range [0, 63]
57472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         negs x9, x10, lsl #64
57572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
57672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
57772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         negs x11, x12, lsr #-1
57872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                             ^
579b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'lsl', 'lsr' or 'asr' with optional integer in range [0, 63]
58072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         negs x11, x12, lsr #64
58172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
58272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
58372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         negs x19, xzr, asr #-1
58472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                             ^
585b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'lsl', 'lsr' or 'asr' with optional integer in range [0, 63]
58672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         negs xzr, xzr, asr #64
58772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
58872062f5744557e270a38192554c3126ea5f97434Tim Northover
58972062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
59072062f5744557e270a38192554c3126ea5f97434Tim Northover// Add-subtract (shifted register)
59172062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
59272062f5744557e270a38192554c3126ea5f97434Tim Northover
59372062f5744557e270a38192554c3126ea5f97434Tim Northover        adc wsp, w3, w5
59472062f5744557e270a38192554c3126ea5f97434Tim Northover        adc w1, wsp, w2
59572062f5744557e270a38192554c3126ea5f97434Tim Northover        adc w0, w10, wsp
59672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
59772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        adc wsp, w3, w5
59872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:            ^
59972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
60072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         adc w1, wsp, w2
60172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
60272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
60372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         adc w0, w10, wsp
60472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
60572062f5744557e270a38192554c3126ea5f97434Tim Northover
60672062f5744557e270a38192554c3126ea5f97434Tim Northover        adc sp, x3, x5
60772062f5744557e270a38192554c3126ea5f97434Tim Northover        adc x1, sp, x2
60872062f5744557e270a38192554c3126ea5f97434Tim Northover        adc x0, x10, sp
60972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
61072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         adc sp, x3, x5
61172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
61272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
61372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         adc x1, sp, x2
61472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
61572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
61672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         adc x0, x10, sp
61772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
61872062f5744557e270a38192554c3126ea5f97434Tim Northover
61972062f5744557e270a38192554c3126ea5f97434Tim Northover        adcs wsp, w3, w5
62072062f5744557e270a38192554c3126ea5f97434Tim Northover        adcs w1, wsp, w2
62172062f5744557e270a38192554c3126ea5f97434Tim Northover        adcs w0, w10, wsp
62272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
62372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         adcs wsp, w3, w5
62472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
62572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
62672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         adcs w1, wsp, w2
62772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
62872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
62972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         adcs w0, w10, wsp
63072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
63172062f5744557e270a38192554c3126ea5f97434Tim Northover
63272062f5744557e270a38192554c3126ea5f97434Tim Northover        adcs sp, x3, x5
63372062f5744557e270a38192554c3126ea5f97434Tim Northover        adcs x1, sp, x2
63472062f5744557e270a38192554c3126ea5f97434Tim Northover        adcs x0, x10, sp
63572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
63672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         adcs sp, x3, x5
63772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
63872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
63972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         adcs x1, sp, x2
64072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
64172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
64272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         adcs x0, x10, sp
64372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
64472062f5744557e270a38192554c3126ea5f97434Tim Northover
64572062f5744557e270a38192554c3126ea5f97434Tim Northover        sbc wsp, w3, w5
64672062f5744557e270a38192554c3126ea5f97434Tim Northover        sbc w1, wsp, w2
64772062f5744557e270a38192554c3126ea5f97434Tim Northover        sbc w0, w10, wsp
64872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
64972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbc wsp, w3, w5
65072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
65172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
65272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbc w1, wsp, w2
65372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
65472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
65572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbc w0, w10, wsp
65672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
65772062f5744557e270a38192554c3126ea5f97434Tim Northover
65872062f5744557e270a38192554c3126ea5f97434Tim Northover        sbc sp, x3, x5
65972062f5744557e270a38192554c3126ea5f97434Tim Northover        sbc x1, sp, x2
66072062f5744557e270a38192554c3126ea5f97434Tim Northover        sbc x0, x10, sp
66172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
66272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbc sp, x3, x5
66372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
66472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
66572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbc x1, sp, x2
66672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
66772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
66872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbc x0, x10, sp
66972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
67072062f5744557e270a38192554c3126ea5f97434Tim Northover
67172062f5744557e270a38192554c3126ea5f97434Tim Northover        sbcs wsp, w3, w5
67272062f5744557e270a38192554c3126ea5f97434Tim Northover        sbcs w1, wsp, w2
67372062f5744557e270a38192554c3126ea5f97434Tim Northover        sbcs w0, w10, wsp
67472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
67572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbcs wsp, w3, w5
67672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
67772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
67872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbcs w1, wsp, w2
67972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
68072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
68172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbcs w0, w10, wsp
68272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
68372062f5744557e270a38192554c3126ea5f97434Tim Northover
68472062f5744557e270a38192554c3126ea5f97434Tim Northover        sbcs sp, x3, x5
68572062f5744557e270a38192554c3126ea5f97434Tim Northover        sbcs x1, sp, x2
68672062f5744557e270a38192554c3126ea5f97434Tim Northover        sbcs x0, x10, sp
68772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
68872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbcs sp, x3, x5
68972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
69072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
69172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbcs x1, sp, x2
69272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
69372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
69472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbcs x0, x10, sp
69572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
69672062f5744557e270a38192554c3126ea5f97434Tim Northover
69772062f5744557e270a38192554c3126ea5f97434Tim Northover        ngc wsp, w3
69872062f5744557e270a38192554c3126ea5f97434Tim Northover        ngc w9, wsp
69972062f5744557e270a38192554c3126ea5f97434Tim Northover        ngc sp, x9
70072062f5744557e270a38192554c3126ea5f97434Tim Northover        ngc x2, sp
70172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
70272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ngc wsp, w3
70372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
70472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
70572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ngc w9, wsp
70672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
70772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
70872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ngc sp, x9
70972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
71072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
71172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ngc x2, sp
71272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
71372062f5744557e270a38192554c3126ea5f97434Tim Northover
71472062f5744557e270a38192554c3126ea5f97434Tim Northover        ngcs wsp, w3
71572062f5744557e270a38192554c3126ea5f97434Tim Northover        ngcs w9, wsp
71672062f5744557e270a38192554c3126ea5f97434Tim Northover        ngcs sp, x9
71772062f5744557e270a38192554c3126ea5f97434Tim Northover        ngcs x2, sp
71872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
71972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ngcs wsp, w3
72072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
72172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
72272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ngcs w9, wsp
72372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
72472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
72572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ngcs sp, x9
72672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
72772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
72872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ngcs x2, sp
72972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
73072062f5744557e270a38192554c3126ea5f97434Tim Northover
73172062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
73272062f5744557e270a38192554c3126ea5f97434Tim Northover// Bitfield
73372062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
73472062f5744557e270a38192554c3126ea5f97434Tim Northover
73572062f5744557e270a38192554c3126ea5f97434Tim Northover        sbfm x3, w13, #0, #0
73672062f5744557e270a38192554c3126ea5f97434Tim Northover        sbfm w12, x9, #0, #0
73772062f5744557e270a38192554c3126ea5f97434Tim Northover        sbfm sp, x3, #3, #5
73872062f5744557e270a38192554c3126ea5f97434Tim Northover        sbfm w3, wsp, #1, #9
73972062f5744557e270a38192554c3126ea5f97434Tim Northover        sbfm x9, x5, #-1, #0
74072062f5744557e270a38192554c3126ea5f97434Tim Northover        sbfm x9, x5, #0, #-1
74172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
74272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbfm x3, w13, #0, #0
74372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
74472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
74572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbfm w12, x9, #0, #0
74672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
74772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
74872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbfm sp, x3, #3, #5
74972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
75072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
75172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbfm w3, wsp, #1, #9
75272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
753b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 63]
75472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbfm x9, x5, #-1, #0
75572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
756b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 63]
75772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbfm x9, x5, #0, #-1
75872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                          ^
75972062f5744557e270a38192554c3126ea5f97434Tim Northover
76072062f5744557e270a38192554c3126ea5f97434Tim Northover        sbfm w3, w5, #32, #1
76172062f5744557e270a38192554c3126ea5f97434Tim Northover        sbfm w7, w11, #19, #32
76272062f5744557e270a38192554c3126ea5f97434Tim Northover        sbfm x29, x30, #64, #0
76372062f5744557e270a38192554c3126ea5f97434Tim Northover        sbfm x10, x20, #63, #64
764b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected integer in range [0, 31]
76572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbfm w3, w5, #32, #1
76672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
767b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 31]
76872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbfm w7, w11, #19, #32
76972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                            ^
770b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 63]
77172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbfm x29, x30, #64, #0
77272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
773b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 63]
77472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbfm x10, x20, #63, #64
77572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                             ^
77672062f5744557e270a38192554c3126ea5f97434Tim Northover
77772062f5744557e270a38192554c3126ea5f97434Tim Northover        ubfm w3, w5, #32, #1
77872062f5744557e270a38192554c3126ea5f97434Tim Northover        ubfm w7, w11, #19, #32
77972062f5744557e270a38192554c3126ea5f97434Tim Northover        ubfm x29, x30, #64, #0
78072062f5744557e270a38192554c3126ea5f97434Tim Northover        ubfm x10, x20, #63, #64
781b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected integer in range [0, 31]
78272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ubfm w3, w5, #32, #1
78372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
784b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 31]
78572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ubfm w7, w11, #19, #32
78672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                            ^
787b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 63]
78872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ubfm x29, x30, #64, #0
78972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
790b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 63]
79172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ubfm x10, x20, #63, #64
79272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                             ^
79372062f5744557e270a38192554c3126ea5f97434Tim Northover
79472062f5744557e270a38192554c3126ea5f97434Tim Northover        bfm w3, w5, #32, #1
79572062f5744557e270a38192554c3126ea5f97434Tim Northover        bfm w7, w11, #19, #32
79672062f5744557e270a38192554c3126ea5f97434Tim Northover        bfm x29, x30, #64, #0
79772062f5744557e270a38192554c3126ea5f97434Tim Northover        bfm x10, x20, #63, #64
798b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected integer in range [0, 31]
79972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         bfm w3, w5, #32, #1
80072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
801b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 31]
80272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         bfm w7, w11, #19, #32
80372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                            ^
804b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 63]
80572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         bfm x29, x30, #64, #0
80672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
807b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 63]
80872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         bfm x10, x20, #63, #64
80972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                             ^
81072062f5744557e270a38192554c3126ea5f97434Tim Northover
81172062f5744557e270a38192554c3126ea5f97434Tim Northover        sxtb x3, x2
81272062f5744557e270a38192554c3126ea5f97434Tim Northover        sxth xzr, xzr
81372062f5744557e270a38192554c3126ea5f97434Tim Northover        sxtw x3, x5
81472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
81572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sxtb x3, x2
81672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
81772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
81872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sxth xzr, xzr
81972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
82072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
82172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sxtw x3, x5
82272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
82372062f5744557e270a38192554c3126ea5f97434Tim Northover
82472062f5744557e270a38192554c3126ea5f97434Tim Northover        uxtb x3, x12
82572062f5744557e270a38192554c3126ea5f97434Tim Northover        uxth x5, x9
82672062f5744557e270a38192554c3126ea5f97434Tim Northover        uxtw x3, x5
82772062f5744557e270a38192554c3126ea5f97434Tim Northover        uxtb x2, sp
82872062f5744557e270a38192554c3126ea5f97434Tim Northover        uxtb sp, xzr
82972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
83072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         uxtb x3, x12
83172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
83272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
83372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         uxth x5, x9
83472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
83572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid instruction
83672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         uxtw x3, x5
83772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ^
83872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
83972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         uxtb x2, sp
84072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
84172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
84272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         uxtb sp, xzr
84372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
84472062f5744557e270a38192554c3126ea5f97434Tim Northover
84572062f5744557e270a38192554c3126ea5f97434Tim Northover        asr x3, w2, #1
84672062f5744557e270a38192554c3126ea5f97434Tim Northover        asr sp, x2, #1
84772062f5744557e270a38192554c3126ea5f97434Tim Northover        asr x25, x26, #-1
84872062f5744557e270a38192554c3126ea5f97434Tim Northover        asr x25, x26, #64
84972062f5744557e270a38192554c3126ea5f97434Tim Northover        asr w9, w8, #32
85072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
85172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         asr x3, w2, #1
85272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
85372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
85472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         asr sp, x2, #1
85572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
856b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 63]
85772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         asr x25, x26, #-1
85872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
859b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 63]
86072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         asr x25, x26, #64
86172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
862b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 31]
86372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         asr w9, w8, #32
86472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
86572062f5744557e270a38192554c3126ea5f97434Tim Northover
86672062f5744557e270a38192554c3126ea5f97434Tim Northover        sbfiz w1, w2, #0, #0
86772062f5744557e270a38192554c3126ea5f97434Tim Northover        sbfiz wsp, w9, #0, #1
86872062f5744557e270a38192554c3126ea5f97434Tim Northover        sbfiz w9, w10, #32, #1
86972062f5744557e270a38192554c3126ea5f97434Tim Northover        sbfiz w11, w12, #32, #0
87072062f5744557e270a38192554c3126ea5f97434Tim Northover        sbfiz w9, w10, #10, #23
87172062f5744557e270a38192554c3126ea5f97434Tim Northover        sbfiz x3, x5, #12, #53
87272062f5744557e270a38192554c3126ea5f97434Tim Northover        sbfiz sp, x3, #5, #6
87372062f5744557e270a38192554c3126ea5f97434Tim Northover        sbfiz w3, wsp, #7, #8
874b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected integer in range [<lsb>, 31]
87572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbfiz w1, w2, #0, #0
87672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
87772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
87872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbfiz wsp, w9, #0, #1
87972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:               ^
880b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 31]
88172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbfiz w9, w10, #32, #1
88272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
883b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 31]
88472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbfiz w11, w12, #32, #0
88572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
88672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: requested insert overflows register
88772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbfiz w9, w10, #10, #23
88872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                             ^
88972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: requested insert overflows register
89072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbfiz x3, x5, #12, #53
89172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                            ^
89272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
89372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbfiz sp, x3, #5, #6
89472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:               ^
89572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
89672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbfiz w3, wsp, #7, #8
89772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
89872062f5744557e270a38192554c3126ea5f97434Tim Northover
89972062f5744557e270a38192554c3126ea5f97434Tim Northover        sbfx w1, w2, #0, #0
90072062f5744557e270a38192554c3126ea5f97434Tim Northover        sbfx wsp, w9, #0, #1
90172062f5744557e270a38192554c3126ea5f97434Tim Northover        sbfx w9, w10, #32, #1
90272062f5744557e270a38192554c3126ea5f97434Tim Northover        sbfx w11, w12, #32, #0
90372062f5744557e270a38192554c3126ea5f97434Tim Northover        sbfx w9, w10, #10, #23
90472062f5744557e270a38192554c3126ea5f97434Tim Northover        sbfx x3, x5, #12, #53
90572062f5744557e270a38192554c3126ea5f97434Tim Northover        sbfx sp, x3, #5, #6
90672062f5744557e270a38192554c3126ea5f97434Tim Northover        sbfx w3, wsp, #7, #8
907b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected integer in range [<lsb>, 31]
90872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbfx w1, w2, #0, #0
90972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                          ^
91072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
91172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbfx wsp, w9, #0, #1
91272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
913b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 31]
91472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbfx w9, w10, #32, #1
91572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
916b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 31]
91772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbfx w11, w12, #32, #0
91872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
91972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: requested extract overflows register
92072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbfx w9, w10, #10, #23
92172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                            ^
92272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: requested extract overflows register
92372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbfx x3, x5, #12, #53
92472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
92572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
92672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbfx sp, x3, #5, #6
92772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
92872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
92972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbfx w3, wsp, #7, #8
93072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
93172062f5744557e270a38192554c3126ea5f97434Tim Northover
93272062f5744557e270a38192554c3126ea5f97434Tim Northover        bfi w1, w2, #0, #0
93372062f5744557e270a38192554c3126ea5f97434Tim Northover        bfi wsp, w9, #0, #1
93472062f5744557e270a38192554c3126ea5f97434Tim Northover        bfi w9, w10, #32, #1
93572062f5744557e270a38192554c3126ea5f97434Tim Northover        bfi w11, w12, #32, #0
93672062f5744557e270a38192554c3126ea5f97434Tim Northover        bfi w9, w10, #10, #23
93772062f5744557e270a38192554c3126ea5f97434Tim Northover        bfi x3, x5, #12, #53
93872062f5744557e270a38192554c3126ea5f97434Tim Northover        bfi sp, x3, #5, #6
93972062f5744557e270a38192554c3126ea5f97434Tim Northover        bfi w3, wsp, #7, #8
940b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected integer in range [<lsb>, 31]
94172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         bfi w1, w2, #0, #0
94272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
94372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
94472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         bfi wsp, w9, #0, #1
94572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
946b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 31]
94772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         bfi w9, w10, #32, #1
94872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
949b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 31]
95072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         bfi w11, w12, #32, #0
95172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
95272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: requested insert overflows register
95372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         bfi w9, w10, #10, #23
95472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
95572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: requested insert overflows register
95672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         bfi x3, x5, #12, #53
95772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                          ^
95872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
95972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         bfi sp, x3, #5, #6
96072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
96172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
96272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         bfi w3, wsp, #7, #8
96372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
96472062f5744557e270a38192554c3126ea5f97434Tim Northover
96572062f5744557e270a38192554c3126ea5f97434Tim Northover        bfxil w1, w2, #0, #0
96672062f5744557e270a38192554c3126ea5f97434Tim Northover        bfxil wsp, w9, #0, #1
96772062f5744557e270a38192554c3126ea5f97434Tim Northover        bfxil w9, w10, #32, #1
96872062f5744557e270a38192554c3126ea5f97434Tim Northover        bfxil w11, w12, #32, #0
96972062f5744557e270a38192554c3126ea5f97434Tim Northover        bfxil w9, w10, #10, #23
97072062f5744557e270a38192554c3126ea5f97434Tim Northover        bfxil x3, x5, #12, #53
97172062f5744557e270a38192554c3126ea5f97434Tim Northover        bfxil sp, x3, #5, #6
97272062f5744557e270a38192554c3126ea5f97434Tim Northover        bfxil w3, wsp, #7, #8
973b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected integer in range [<lsb>, 31]
97472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         bfxil w1, w2, #0, #0
97572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
97672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
97772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         bfxil wsp, w9, #0, #1
97872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:               ^
979b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 31]
98072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         bfxil w9, w10, #32, #1
98172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
982b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 31]
98372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         bfxil w11, w12, #32, #0
98472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
98572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: requested extract overflows register
98672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         bfxil w9, w10, #10, #23
98772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                             ^
98872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: requested extract overflows register
98972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         bfxil x3, x5, #12, #53
99072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                            ^
99172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
99272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         bfxil sp, x3, #5, #6
99372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:               ^
99472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
99572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         bfxil w3, wsp, #7, #8
99672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
99772062f5744557e270a38192554c3126ea5f97434Tim Northover
99872062f5744557e270a38192554c3126ea5f97434Tim Northover        ubfiz w1, w2, #0, #0
99972062f5744557e270a38192554c3126ea5f97434Tim Northover        ubfiz wsp, w9, #0, #1
100072062f5744557e270a38192554c3126ea5f97434Tim Northover        ubfiz w9, w10, #32, #1
100172062f5744557e270a38192554c3126ea5f97434Tim Northover        ubfiz w11, w12, #32, #0
100272062f5744557e270a38192554c3126ea5f97434Tim Northover        ubfiz w9, w10, #10, #23
100372062f5744557e270a38192554c3126ea5f97434Tim Northover        ubfiz x3, x5, #12, #53
100472062f5744557e270a38192554c3126ea5f97434Tim Northover        ubfiz sp, x3, #5, #6
100572062f5744557e270a38192554c3126ea5f97434Tim Northover        ubfiz w3, wsp, #7, #8
1006b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected integer in range [<lsb>, 31]
100772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ubfiz w1, w2, #0, #0
100872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
100972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
101072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ubfiz wsp, w9, #0, #1
101172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:               ^
1012b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 31]
101372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ubfiz w9, w10, #32, #1
101472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
1015b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 31]
101672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ubfiz w11, w12, #32, #0
101772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
101872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: requested insert overflows register
101972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ubfiz w9, w10, #10, #23
102072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                             ^
102172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: requested insert overflows register
102272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ubfiz x3, x5, #12, #53
102372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                            ^
102472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
102572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ubfiz sp, x3, #5, #6
102672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:               ^
102772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
102872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ubfiz w3, wsp, #7, #8
102972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
103072062f5744557e270a38192554c3126ea5f97434Tim Northover
103172062f5744557e270a38192554c3126ea5f97434Tim Northover        ubfx w1, w2, #0, #0
103272062f5744557e270a38192554c3126ea5f97434Tim Northover        ubfx wsp, w9, #0, #1
103372062f5744557e270a38192554c3126ea5f97434Tim Northover        ubfx w9, w10, #32, #1
103472062f5744557e270a38192554c3126ea5f97434Tim Northover        ubfx w11, w12, #32, #0
103572062f5744557e270a38192554c3126ea5f97434Tim Northover        ubfx w9, w10, #10, #23
103672062f5744557e270a38192554c3126ea5f97434Tim Northover        ubfx x3, x5, #12, #53
103772062f5744557e270a38192554c3126ea5f97434Tim Northover        ubfx sp, x3, #5, #6
103872062f5744557e270a38192554c3126ea5f97434Tim Northover        ubfx w3, wsp, #7, #8
1039b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected integer in range [<lsb>, 31]
104072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ubfx w1, w2, #0, #0
104172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
104272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
104372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ubfx wsp, w9, #0, #1
104472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
1045b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 31]
104672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ubfx w9, w10, #32, #1
104772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
1048b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 31]
104972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ubfx w11, w12, #32, #0
105072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
105172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: requested extract overflows register
105272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ubfx w9, w10, #10, #23
105372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                            ^
105472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: requested extract overflows register
105572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ubfx x3, x5, #12, #53
105672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
105772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
105872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ubfx sp, x3, #5, #6
105972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
106072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
106172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ubfx w3, wsp, #7, #8
106272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
106372062f5744557e270a38192554c3126ea5f97434Tim Northover
106472062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
106572062f5744557e270a38192554c3126ea5f97434Tim Northover// Compare & branch (immediate)
106672062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
106772062f5744557e270a38192554c3126ea5f97434Tim Northover
106872062f5744557e270a38192554c3126ea5f97434Tim Northover        cbnz wsp, lbl
106972062f5744557e270a38192554c3126ea5f97434Tim Northover        cbz  sp, lbl
107072062f5744557e270a38192554c3126ea5f97434Tim Northover        cbz  x3, x5
107172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
107272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:           cbnz wsp, lbl
107372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                ^
107472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
107572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:           cbz sp, lbl
107672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:               ^
1077b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected label or encodable integer pc offset
107872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:           cbz x3, x5
107972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
108072062f5744557e270a38192554c3126ea5f97434Tim Northover
108172062f5744557e270a38192554c3126ea5f97434Tim Northover        cbz w20, #1048576
108272062f5744557e270a38192554c3126ea5f97434Tim Northover        cbnz xzr, #-1048580
108372062f5744557e270a38192554c3126ea5f97434Tim Northover        cbz x29, #1
1084b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected label or encodable integer pc offset
108572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:           cbz w20, #1048576
108672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
1087b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected label or encodable integer pc offset
108872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:           cbnz xzr, #-1048580
108972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                    ^
1090b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected label or encodable integer pc offset
109172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:           cbz x29, #1
109272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                    ^
109372062f5744557e270a38192554c3126ea5f97434Tim Northover
109472062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
109572062f5744557e270a38192554c3126ea5f97434Tim Northover// Conditional branch (immediate)
109672062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
109772062f5744557e270a38192554c3126ea5f97434Tim Northover
109872062f5744557e270a38192554c3126ea5f97434Tim Northover        b.zf lbl
109972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid condition code
110072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:           b.zf lbl
110172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
110272062f5744557e270a38192554c3126ea5f97434Tim Northover
110372062f5744557e270a38192554c3126ea5f97434Tim Northover        b.eq #1048576
110472062f5744557e270a38192554c3126ea5f97434Tim Northover        b.ge #-1048580
110572062f5744557e270a38192554c3126ea5f97434Tim Northover        b.cc #1
1106b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected label or encodable integer pc offset
110772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:           b.eq #1048576
110872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                ^
1109b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected label or encodable integer pc offset
111072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:           b.ge #-1048580
111172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                ^
1112b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected label or encodable integer pc offset
111372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:           b.cc #1
111472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                ^
111572062f5744557e270a38192554c3126ea5f97434Tim Northover
111672062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
111772062f5744557e270a38192554c3126ea5f97434Tim Northover// Conditional compare (immediate)
111872062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
111972062f5744557e270a38192554c3126ea5f97434Tim Northover
112072062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmp wsp, #4, #2, ne
112172062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmp w25, #-1, #15, hs
112272062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmp w3, #32, #0, ge
112372062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmp w19, #5, #-1, lt
112472062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmp w20, #7, #16, hs
112572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
112672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmp wsp, #4, #2, ne
112772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
1128b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 31]
112972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmp w25, #-1, #15, hs
113072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
1131b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 31]
113272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmp w3, #32, #0, ge
113372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
1134b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 15]
113572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmp w19, #5, #-1, lt
113672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
1137b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 15]
113872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmp w20, #7, #16, hs
113972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
114072062f5744557e270a38192554c3126ea5f97434Tim Northover
114172062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmp sp, #4, #2, ne
114272062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmp x25, #-1, #15, hs
114372062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmp x3, #32, #0, ge
114472062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmp x19, #5, #-1, lt
114572062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmp x20, #7, #16, hs
114672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
114772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmp sp, #4, #2, ne
114872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
1149b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 31]
115072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmp x25, #-1, #15, hs
115172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
1152b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 31]
115372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmp x3, #32, #0, ge
115472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
1155b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 15]
115672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmp x19, #5, #-1, lt
115772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
1158b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 15]
115972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmp x20, #7, #16, hs
116072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
116172062f5744557e270a38192554c3126ea5f97434Tim Northover
116272062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmn wsp, #4, #2, ne
116372062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmn w25, #-1, #15, hs
116472062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmn w3, #32, #0, ge
116572062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmn w19, #5, #-1, lt
116672062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmn w20, #7, #16, hs
116772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
116872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmn wsp, #4, #2, ne
116972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
1170b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 31]
117172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmn w25, #-1, #15, hs
117272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
1173b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 31]
117472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmn w3, #32, #0, ge
117572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
1176b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 15]
117772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmn w19, #5, #-1, lt
117872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
1179b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 15]
118072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmn w20, #7, #16, hs
118172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
118272062f5744557e270a38192554c3126ea5f97434Tim Northover
118372062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmn sp, #4, #2, ne
118472062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmn x25, #-1, #15, hs
118572062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmn x3, #32, #0, ge
118672062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmn x19, #5, #-1, lt
118772062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmn x20, #7, #16, hs
118872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
118972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmn sp, #4, #2, ne
119072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
1191b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 31]
119272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmn x25, #-1, #15, hs
119372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
1194b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 31]
119572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmn x3, #32, #0, ge
119672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
1197b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 15]
119872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmn x19, #5, #-1, lt
119972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
1200b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 15]
120172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmn x20, #7, #16, hs
120272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
120372062f5744557e270a38192554c3126ea5f97434Tim Northover
120472062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
120572062f5744557e270a38192554c3126ea5f97434Tim Northover// Conditional compare (register)
120672062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
120772062f5744557e270a38192554c3126ea5f97434Tim Northover
120872062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmp wsp, w4, #2, ne
120972062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmp w3, wsp, #0, ge
121072062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmp w19, w5, #-1, lt
121172062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmp w20, w7, #16, hs
121272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
121372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmp wsp, w4, #2, ne
121472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
1215b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 31]
121672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmp w3, wsp, #0, ge
121772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
1218b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 15]
121972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmp w19, w5, #-1, lt
122072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
1221b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 15]
122272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmp w20, w7, #16, hs
122372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
122472062f5744557e270a38192554c3126ea5f97434Tim Northover
122572062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmp sp, x4, #2, ne
122672062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmp x25, sp, #15, hs
122772062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmp x19, x5, #-1, lt
122872062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmp x20, x7, #16, hs
122972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
123072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmp sp, x4, #2, ne
123172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
1232b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 31]
123372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmp x25, sp, #15, hs
123472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
1235b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 15]
123672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmp x19, x5, #-1, lt
123772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
1238b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 15]
123972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmp x20, x7, #16, hs
124072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
124172062f5744557e270a38192554c3126ea5f97434Tim Northover
124272062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmn wsp, w4, #2, ne
124372062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmn w25, wsp, #15, hs
124472062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmn w19, w5, #-1, lt
124572062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmn w20, w7, #16, hs
124672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
124772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmn wsp, w4, #2, ne
124872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
1249b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 31]
125072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmn w25, wsp, #15, hs
125172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
1252b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 15]
125372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmn w19, w5, #-1, lt
125472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
1255b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 15]
125672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmn w20, w7, #16, hs
125772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
125872062f5744557e270a38192554c3126ea5f97434Tim Northover
125972062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmn sp, x4, #2, ne
126072062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmn x25, sp, #15, hs
126172062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmn x19, x5, #-1, lt
126272062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmn x20, x7, #16, hs
126372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
126472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmn sp, x4, #2, ne
126572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
1266b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 31]
126772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmn x25, sp, #15, hs
126872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
1269b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 15]
127072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmn x19, x5, #-1, lt
127172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
1272b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 15]
127372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmn x20, x7, #16, hs
127472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
127572062f5744557e270a38192554c3126ea5f97434Tim Northover
127672062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
127772062f5744557e270a38192554c3126ea5f97434Tim Northover// Conditional select
127872062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
127972062f5744557e270a38192554c3126ea5f97434Tim Northover
128072062f5744557e270a38192554c3126ea5f97434Tim Northover        csel w4, wsp, w9, eq
128172062f5744557e270a38192554c3126ea5f97434Tim Northover        csel wsp, w2, w3, ne
128272062f5744557e270a38192554c3126ea5f97434Tim Northover        csel w10, w11, wsp, ge
128372062f5744557e270a38192554c3126ea5f97434Tim Northover        csel w1, w2, w3, #3
128472062f5744557e270a38192554c3126ea5f97434Tim Northover        csel x4, sp, x9, eq
128572062f5744557e270a38192554c3126ea5f97434Tim Northover        csel sp, x2, x3, ne
128672062f5744557e270a38192554c3126ea5f97434Tim Northover        csel x10, x11, sp, ge
128772062f5744557e270a38192554c3126ea5f97434Tim Northover        csel x1, x2, x3, #3
128872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
128972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        csel w4, wsp, w9, eq
129072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
129172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
129272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        csel wsp, w2, w3, ne
129372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
129472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
129572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        csel w10, w11, wsp, ge
129672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
1297b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected AArch64 condition code
129872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        csel w1, w2, w3, #3
129972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
130072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
130172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        csel x4, sp, x9, eq
130272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
130372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
130472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        csel sp, x2, x3, ne
130572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
130672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
130772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        csel x10, x11, sp, ge
130872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
1309b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected AArch64 condition code
131072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        csel x1, x2, x3, #3
131172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
131272062f5744557e270a38192554c3126ea5f97434Tim Northover
131372062f5744557e270a38192554c3126ea5f97434Tim Northover        csinc w20, w21, wsp, mi
131472062f5744557e270a38192554c3126ea5f97434Tim Northover        csinc sp, x30, x29, eq
131572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
131672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        csinc w20, w21, wsp, mi
131772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
131872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
131972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        csinc sp, x30, x29, eq
132072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
132172062f5744557e270a38192554c3126ea5f97434Tim Northover
132272062f5744557e270a38192554c3126ea5f97434Tim Northover        csinv w20, wsp, wsp, mi
132372062f5744557e270a38192554c3126ea5f97434Tim Northover        csinv sp, x30, x29, le
132472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
132572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        csinv w20, wsp, wsp, mi
132672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
132772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
132872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        csinv sp, x30, x29, le
132972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
133072062f5744557e270a38192554c3126ea5f97434Tim Northover
133172062f5744557e270a38192554c3126ea5f97434Tim Northover        csneg w20, w21, wsp, mi
133272062f5744557e270a38192554c3126ea5f97434Tim Northover        csneg x0, sp, x29, le
133372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
133472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        csneg w20, w21, wsp, mi
133572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
133672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
133772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        csneg x0, sp, x29, le
133872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
133972062f5744557e270a38192554c3126ea5f97434Tim Northover
134072062f5744557e270a38192554c3126ea5f97434Tim Northover        cset wsp, lt
134172062f5744557e270a38192554c3126ea5f97434Tim Northover        csetm sp, ge
134272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
134372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        cset wsp, lt
134472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
134572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
134672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        csetm sp, ge
134772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
134872062f5744557e270a38192554c3126ea5f97434Tim Northover
134972062f5744557e270a38192554c3126ea5f97434Tim Northover        cinc w3, wsp, ne
135072062f5744557e270a38192554c3126ea5f97434Tim Northover        cinc sp, x9, eq
135172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
135272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        cinc w3, wsp, ne
135372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
135472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
135572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        cinc sp, x9, eq
135672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
135772062f5744557e270a38192554c3126ea5f97434Tim Northover
135872062f5744557e270a38192554c3126ea5f97434Tim Northover        cinv w3, wsp, ne
135972062f5744557e270a38192554c3126ea5f97434Tim Northover        cinv sp, x9, eq
136072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
136172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        cinv w3, wsp, ne
136272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
136372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
136472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        cinv sp, x9, eq
136572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
136672062f5744557e270a38192554c3126ea5f97434Tim Northover
136772062f5744557e270a38192554c3126ea5f97434Tim Northover        cneg w3, wsp, ne
136872062f5744557e270a38192554c3126ea5f97434Tim Northover        cneg sp, x9, eq
136972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
137072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        cneg w3, wsp, ne
137172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
137272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
137372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        cneg sp, x9, eq
137472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
137572062f5744557e270a38192554c3126ea5f97434Tim Northover
137672062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
137772062f5744557e270a38192554c3126ea5f97434Tim Northover// Data Processing (1 source)
137872062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
137972062f5744557e270a38192554c3126ea5f97434Tim Northover        rbit x23, w2
138072062f5744557e270a38192554c3126ea5f97434Tim Northover//CHECK-ERROR: error: invalid operand for instruction
138172062f5744557e270a38192554c3126ea5f97434Tim Northover//CHECK-ERROR-NEXT:     rbit x23, w2
138272062f5744557e270a38192554c3126ea5f97434Tim Northover
138372062f5744557e270a38192554c3126ea5f97434Tim Northover        cls sp, x2
138472062f5744557e270a38192554c3126ea5f97434Tim Northover//CHECK-ERROR: error: invalid operand for instruction
138572062f5744557e270a38192554c3126ea5f97434Tim Northover//CHECK-ERROR-NEXT:     cls sp, x2
138672062f5744557e270a38192554c3126ea5f97434Tim Northover
138772062f5744557e270a38192554c3126ea5f97434Tim Northover        clz wsp, w3
138872062f5744557e270a38192554c3126ea5f97434Tim Northover//CHECK-ERROR: error: invalid operand for instruction
138972062f5744557e270a38192554c3126ea5f97434Tim Northover//CHECK-ERROR-NEXT:     clz wsp, w3
139072062f5744557e270a38192554c3126ea5f97434Tim Northover
139172062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
139272062f5744557e270a38192554c3126ea5f97434Tim Northover// Data Processing (2 sources)
139372062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
139472062f5744557e270a38192554c3126ea5f97434Tim Northover        udiv x23, w2, x18
139572062f5744557e270a38192554c3126ea5f97434Tim Northover//CHECK-ERROR: error: invalid operand for instruction
139672062f5744557e270a38192554c3126ea5f97434Tim Northover//CHECK-ERROR-NEXT:     udiv x23, w2, x18
139772062f5744557e270a38192554c3126ea5f97434Tim Northover
139872062f5744557e270a38192554c3126ea5f97434Tim Northover        lsl sp, x2, x4
139972062f5744557e270a38192554c3126ea5f97434Tim Northover//CHECK-ERROR: error: invalid operand for instruction
140072062f5744557e270a38192554c3126ea5f97434Tim Northover//CHECK-ERROR-NEXT:     lsl sp, x2, x4
140172062f5744557e270a38192554c3126ea5f97434Tim Northover
140272062f5744557e270a38192554c3126ea5f97434Tim Northover        asr wsp, w3, w9
140372062f5744557e270a38192554c3126ea5f97434Tim Northover//CHECK-ERROR: error: invalid operand for instruction
140472062f5744557e270a38192554c3126ea5f97434Tim Northover//CHECK-ERROR-NEXT:     asr wsp, w3, w9
140572062f5744557e270a38192554c3126ea5f97434Tim Northover
140672062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
140772062f5744557e270a38192554c3126ea5f97434Tim Northover// Data Processing (3 sources)
140872062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
140972062f5744557e270a38192554c3126ea5f97434Tim Northover
141072062f5744557e270a38192554c3126ea5f97434Tim Northover        madd sp, x3, x9, x10
141172062f5744557e270a38192554c3126ea5f97434Tim Northover//CHECK-ERROR: error: invalid operand for instruction
141272062f5744557e270a38192554c3126ea5f97434Tim Northover//CHECK-ERROR-NEXT:     madd sp, x3, x9, x10
141372062f5744557e270a38192554c3126ea5f97434Tim Northover
141472062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
141572062f5744557e270a38192554c3126ea5f97434Tim Northover// Exception generation
141672062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
141772062f5744557e270a38192554c3126ea5f97434Tim Northover        svc #-1
141872062f5744557e270a38192554c3126ea5f97434Tim Northover        hlt #65536
141972062f5744557e270a38192554c3126ea5f97434Tim Northover        dcps4 #43
142072062f5744557e270a38192554c3126ea5f97434Tim Northover        dcps4
1421b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected integer in range [0, 65535]
142272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         svc #-1
142372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
1424b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 65535]
142572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         hlt #65536
142672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
142772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid instruction
142872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         dcps4 #43
142972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ^
143072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid instruction
143172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         dcps4
143272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ^
143372062f5744557e270a38192554c3126ea5f97434Tim Northover
143472062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
143572062f5744557e270a38192554c3126ea5f97434Tim Northover// Extract (immediate)
143672062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
143772062f5744557e270a38192554c3126ea5f97434Tim Northover
143872062f5744557e270a38192554c3126ea5f97434Tim Northover        extr w2, w20, w30, #-1
143972062f5744557e270a38192554c3126ea5f97434Tim Northover        extr w9, w19, w20, #32
1440b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 31]
144172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         extr w2, w20, w30, #-1
144272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                            ^
1443b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 31]
144472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         extr w9, w19, w20, #32
144572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                            ^
144672062f5744557e270a38192554c3126ea5f97434Tim Northover
144772062f5744557e270a38192554c3126ea5f97434Tim Northover        extr x10, x15, x20, #-1
144872062f5744557e270a38192554c3126ea5f97434Tim Northover        extr x20, x25, x30, #64
1449b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 63]
145072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         extr x10, x15, x20, #-1
145172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                             ^
1452b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 63]
145372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         extr x20, x25, x30, #64
145472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                             ^
145572062f5744557e270a38192554c3126ea5f97434Tim Northover
145672062f5744557e270a38192554c3126ea5f97434Tim Northover        ror w9, w10, #32
145772062f5744557e270a38192554c3126ea5f97434Tim Northover        ror x10, x11, #64
1458b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 31]
145972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ror w9, w10, #32
146072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
1461b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 63]
146272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ror x10, x11, #64
146372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
146472062f5744557e270a38192554c3126ea5f97434Tim Northover
146572062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
146672062f5744557e270a38192554c3126ea5f97434Tim Northover// Floating-point compare
146772062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
146872062f5744557e270a38192554c3126ea5f97434Tim Northover
146972062f5744557e270a38192554c3126ea5f97434Tim Northover        fcmp s3, d2
1470b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected floating-point constant #0.0
147172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         fcmp s3, d2
147272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
147372062f5744557e270a38192554c3126ea5f97434Tim Northover
147472062f5744557e270a38192554c3126ea5f97434Tim Northover        fcmp s9, #-0.0
147572062f5744557e270a38192554c3126ea5f97434Tim Northover        fcmp d3, #-0.0
147672062f5744557e270a38192554c3126ea5f97434Tim Northover        fcmp s1, #1.0
147772062f5744557e270a38192554c3126ea5f97434Tim Northover        fcmpe s30, #-0.0
1478b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected floating-point constant #0.0
147972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         fcmp s9, #-0.0
148072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
1481b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected floating-point constant #0.0
148272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         fcmp d3, #-0.0
148372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
1484b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected floating-point constant #0.0
148572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         fcmp s1, #1.0
148672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
1487b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected floating-point constant #0.0
148872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         fcmpe s30, #-0.0
148972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                    ^
149072062f5744557e270a38192554c3126ea5f97434Tim Northover
149172062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
149272062f5744557e270a38192554c3126ea5f97434Tim Northover// Floating-point conditional compare
149372062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
149472062f5744557e270a38192554c3126ea5f97434Tim Northover
149572062f5744557e270a38192554c3126ea5f97434Tim Northover        fccmp s19, s5, #-1, lt
149672062f5744557e270a38192554c3126ea5f97434Tim Northover        fccmp s20, s7, #16, hs
1497b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 15]
149872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        fccmp s19, s5, #-1, lt
149972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
1500b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 15]
150172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        fccmp s20, s7, #16, hs
150272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
150372062f5744557e270a38192554c3126ea5f97434Tim Northover
150472062f5744557e270a38192554c3126ea5f97434Tim Northover        fccmp d19, d5, #-1, lt
150572062f5744557e270a38192554c3126ea5f97434Tim Northover        fccmp d20, d7, #16, hs
1506b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 15]
150772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        fccmp d19, d5, #-1, lt
150872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
1509b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 15]
151072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        fccmp d20, d7, #16, hs
151172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
151272062f5744557e270a38192554c3126ea5f97434Tim Northover
151372062f5744557e270a38192554c3126ea5f97434Tim Northover        fccmpe s19, s5, #-1, lt
151472062f5744557e270a38192554c3126ea5f97434Tim Northover        fccmpe s20, s7, #16, hs
1515b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 15]
151672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        fccmpe s19, s5, #-1, lt
151772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
1518b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 15]
151972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        fccmpe s20, s7, #16, hs
152072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
152172062f5744557e270a38192554c3126ea5f97434Tim Northover
152272062f5744557e270a38192554c3126ea5f97434Tim Northover        fccmpe d19, d5, #-1, lt
152372062f5744557e270a38192554c3126ea5f97434Tim Northover        fccmpe d20, d7, #16, hs
1524b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 15]
152572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        fccmpe d19, d5, #-1, lt
152672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
1527b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 15]
152872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        fccmpe d20, d7, #16, hs
152972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
153072062f5744557e270a38192554c3126ea5f97434Tim Northover
153172062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
153272062f5744557e270a38192554c3126ea5f97434Tim Northover// Floating-point conditional compare
153372062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
153472062f5744557e270a38192554c3126ea5f97434Tim Northover
153572062f5744557e270a38192554c3126ea5f97434Tim Northover        fcsel q3, q20, q9, pl
153672062f5744557e270a38192554c3126ea5f97434Tim Northover        fcsel h9, h10, h11, mi
153772062f5744557e270a38192554c3126ea5f97434Tim Northover        fcsel b9, b10, b11, mi
153872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
153972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         fcsel q3, q20, q9, pl
154072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:               ^
154172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
154272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         fcsel h9, h10, h11, mi
154372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:               ^
154472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
154572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         fcsel b9, b10, b11, mi
154672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:               ^
154772062f5744557e270a38192554c3126ea5f97434Tim Northover
154872062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
154972062f5744557e270a38192554c3126ea5f97434Tim Northover// Floating-point data-processing (1 source)
155072062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
155172062f5744557e270a38192554c3126ea5f97434Tim Northover
155272062f5744557e270a38192554c3126ea5f97434Tim Northover        fmov d0, s3
155372062f5744557e270a38192554c3126ea5f97434Tim Northover        fcvt d0, d1
1554b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected compatible register or floating-point constant
155572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:           fmov d0, s3
1556b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT:                    ^
155772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
155872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:           fcvt d0, d1
1559b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT:                    ^
156072062f5744557e270a38192554c3126ea5f97434Tim Northover
156172062f5744557e270a38192554c3126ea5f97434Tim Northover
156272062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
156372062f5744557e270a38192554c3126ea5f97434Tim Northover// Floating-point data-processing (2 sources)
156472062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
156572062f5744557e270a38192554c3126ea5f97434Tim Northover
156672062f5744557e270a38192554c3126ea5f97434Tim Northover        fadd s0, d3, d7
156772062f5744557e270a38192554c3126ea5f97434Tim Northover        fmaxnm d3, s19, d12
156872062f5744557e270a38192554c3126ea5f97434Tim Northover        fnmul d1, d9, s18
156972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
157072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:           fadd s0, d3, d7
157172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: ^
157272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
157372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:           fmaxnm d3, s19, d12
157472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: ^
157572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
157672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:           fnmul d1, d9, s18
157772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: ^
157872062f5744557e270a38192554c3126ea5f97434Tim Northover
157972062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
158072062f5744557e270a38192554c3126ea5f97434Tim Northover// Floating-point data-processing (3 sources)
158172062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
158272062f5744557e270a38192554c3126ea5f97434Tim Northover
158372062f5744557e270a38192554c3126ea5f97434Tim Northover        fmadd b3, b4, b5, b6
158472062f5744557e270a38192554c3126ea5f97434Tim Northover        fmsub h1, h2, h3, h4
158572062f5744557e270a38192554c3126ea5f97434Tim Northover        fnmadd q3, q5, q6, q7
158672062f5744557e270a38192554c3126ea5f97434Tim Northover        fnmsub s2, s4, d5, h9
158772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
158872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         fmadd b3, b4, b5, b6
158972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:               ^
159072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
159172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         fmsub h1, h2, h3, h4
159272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:               ^
159372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
159472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         fnmadd q3, q5, q6, q7
159572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                ^
159672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
159772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         fnmsub s2, s4, d5, h9
159872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                ^
159972062f5744557e270a38192554c3126ea5f97434Tim Northover
160072062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
160172062f5744557e270a38192554c3126ea5f97434Tim Northover// Floating-point conditional compare
160272062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
160372062f5744557e270a38192554c3126ea5f97434Tim Northover
160472062f5744557e270a38192554c3126ea5f97434Tim Northover        fcvtzs w13, s31, #0
160572062f5744557e270a38192554c3126ea5f97434Tim Northover        fcvtzs w19, s20, #33
160672062f5744557e270a38192554c3126ea5f97434Tim Northover        fcvtzs wsp, s19, #14
1607b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [1, 32]
160872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        fcvtzs w13, s31, #0
160972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
1610b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [1, 32]
161172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        fcvtzs w19, s20, #33
161272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
161372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
161472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        fcvtzs wsp, s19, #14
161572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:               ^
161672062f5744557e270a38192554c3126ea5f97434Tim Northover
161772062f5744557e270a38192554c3126ea5f97434Tim Northover        fcvtzs x13, s31, #0
161872062f5744557e270a38192554c3126ea5f97434Tim Northover        fcvtzs x19, s20, #65
161972062f5744557e270a38192554c3126ea5f97434Tim Northover        fcvtzs sp, s19, #14
1620b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [1, 64]
162172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        fcvtzs x13, s31, #0
162272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
1623b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [1, 64]
162472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        fcvtzs x19, s20, #65
162572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
162672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
162772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        fcvtzs sp, s19, #14
162872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:               ^
162972062f5744557e270a38192554c3126ea5f97434Tim Northover
163072062f5744557e270a38192554c3126ea5f97434Tim Northover        fcvtzu w13, s31, #0
163172062f5744557e270a38192554c3126ea5f97434Tim Northover        fcvtzu w19, s20, #33
163272062f5744557e270a38192554c3126ea5f97434Tim Northover        fcvtzu wsp, s19, #14
1633b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [1, 32]
163472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        fcvtzu w13, s31, #0
163572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
1636b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [1, 32]
163772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        fcvtzu w19, s20, #33
163872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
163972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
164072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        fcvtzu wsp, s19, #14
164172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:               ^
164272062f5744557e270a38192554c3126ea5f97434Tim Northover
164372062f5744557e270a38192554c3126ea5f97434Tim Northover        fcvtzu x13, s31, #0
164472062f5744557e270a38192554c3126ea5f97434Tim Northover        fcvtzu x19, s20, #65
164572062f5744557e270a38192554c3126ea5f97434Tim Northover        fcvtzu sp, s19, #14
1646b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [1, 64]
164772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        fcvtzu x13, s31, #0
164872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
1649b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [1, 64]
165072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        fcvtzu x19, s20, #65
165172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
165272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
165372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        fcvtzu sp, s19, #14
165472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:               ^
165572062f5744557e270a38192554c3126ea5f97434Tim Northover
165672062f5744557e270a38192554c3126ea5f97434Tim Northover        scvtf w13, s31, #0
165772062f5744557e270a38192554c3126ea5f97434Tim Northover        scvtf w19, s20, #33
165872062f5744557e270a38192554c3126ea5f97434Tim Northover        scvtf wsp, s19, #14
165972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
166072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        scvtf w13, s31, #0
166172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
166272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
166372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        scvtf w19, s20, #33
166472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
166572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
166672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        scvtf wsp, s19, #14
166772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
166872062f5744557e270a38192554c3126ea5f97434Tim Northover
166972062f5744557e270a38192554c3126ea5f97434Tim Northover        scvtf x13, s31, #0
167072062f5744557e270a38192554c3126ea5f97434Tim Northover        scvtf x19, s20, #65
167172062f5744557e270a38192554c3126ea5f97434Tim Northover        scvtf sp, s19, #14
167272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
167372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        scvtf x13, s31, #0
167472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
167572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
167672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        scvtf x19, s20, #65
167772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
167872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
167972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        scvtf sp, s19, #14
168072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
168172062f5744557e270a38192554c3126ea5f97434Tim Northover
168272062f5744557e270a38192554c3126ea5f97434Tim Northover        ucvtf w13, s31, #0
168372062f5744557e270a38192554c3126ea5f97434Tim Northover        ucvtf w19, s20, #33
168472062f5744557e270a38192554c3126ea5f97434Tim Northover        ucvtf wsp, s19, #14
168572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
168672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ucvtf w13, s31, #0
168772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
168872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
168972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ucvtf w19, s20, #33
169072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
169172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
169272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ucvtf wsp, s19, #14
169372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
169472062f5744557e270a38192554c3126ea5f97434Tim Northover
169572062f5744557e270a38192554c3126ea5f97434Tim Northover        ucvtf x13, s31, #0
169672062f5744557e270a38192554c3126ea5f97434Tim Northover        ucvtf x19, s20, #65
169772062f5744557e270a38192554c3126ea5f97434Tim Northover        ucvtf sp, s19, #14
169872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
169972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ucvtf x13, s31, #0
170072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
170172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
170272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ucvtf x19, s20, #65
170372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
170472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
170572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ucvtf sp, s19, #14
170672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
170772062f5744557e270a38192554c3126ea5f97434Tim Northover
170872062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
170972062f5744557e270a38192554c3126ea5f97434Tim Northover// Floating-point immediate
171072062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
171172062f5744557e270a38192554c3126ea5f97434Tim Northover        ;; Exponent too large
171272062f5744557e270a38192554c3126ea5f97434Tim Northover        fmov d3, #0.0625
171372062f5744557e270a38192554c3126ea5f97434Tim Northover        fmov s2, #32.0
1714b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected compatible register or floating-point constant
171572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:           fmov d3, #0.0625
171672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                    ^
1717b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected compatible register or floating-point constant
171872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:           fmov s2, #32.0
171972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                    ^
172072062f5744557e270a38192554c3126ea5f97434Tim Northover
172172062f5744557e270a38192554c3126ea5f97434Tim Northover        ;; Fraction too precise
172272062f5744557e270a38192554c3126ea5f97434Tim Northover        fmov s9, #1.03125
172372062f5744557e270a38192554c3126ea5f97434Tim Northover        fmov s28, #1.96875
1724b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected compatible register or floating-point constant
172572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:           fmov s9, #1.03125
172672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                    ^
1727b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected compatible register or floating-point constant
172872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:           fmov s28, #1.96875
172972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
173072062f5744557e270a38192554c3126ea5f97434Tim Northover
173172062f5744557e270a38192554c3126ea5f97434Tim Northover        ;; No particular reason, but a striking omission
173272062f5744557e270a38192554c3126ea5f97434Tim Northover        fmov d0, #0.0
1733b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected compatible register or floating-point constant
173472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:           fmov d0, #0.0
173572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                    ^
173672062f5744557e270a38192554c3126ea5f97434Tim Northover
173772062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
173872062f5744557e270a38192554c3126ea5f97434Tim Northover// Floating-point <-> integer conversion
173972062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
174072062f5744557e270a38192554c3126ea5f97434Tim Northover
174172062f5744557e270a38192554c3126ea5f97434Tim Northover        fmov x3, v0.d[0]
174272062f5744557e270a38192554c3126ea5f97434Tim Northover        fmov v29.1d[1], x2
174372062f5744557e270a38192554c3126ea5f97434Tim Northover        fmov x7, v0.d[2]
174472062f5744557e270a38192554c3126ea5f97434Tim Northover        fcvtns sp, s5
174572062f5744557e270a38192554c3126ea5f97434Tim Northover        scvtf s6, wsp
1746b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected lane specifier '[1]'
174772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         fmov x3, v0.d[0]
1748b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT:                       ^
174972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: lane number incompatible with layout
175072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: fmov v29.1d[1], x2
175172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
175272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: lane number incompatible with layout
175372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: fmov x7, v0.d[2]
175472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:               ^
175572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
175672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         fcvtns sp, s5
175772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                ^
175872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
175972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         scvtf s6, wsp
176072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
176172062f5744557e270a38192554c3126ea5f97434Tim Northover
176272062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
176372062f5744557e270a38192554c3126ea5f97434Tim Northover// Load-register (literal)
176472062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
176572062f5744557e270a38192554c3126ea5f97434Tim Northover
176672062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr sp, some_label
176772062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsw w3, somewhere
176872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
176972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr sp, some_label
177072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
177172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
177272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsw w3, somewhere
177372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:               ^
177472062f5744557e270a38192554c3126ea5f97434Tim Northover
177572062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsw x2, #1048576
177672062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr q0, #-1048580
177772062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr x0, #2
1778b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected label or encodable integer pc offset
177972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsw x2, #1048576
178072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
1781b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected label or encodable integer pc offset
178272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr q0, #-1048580
178372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
1784b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected label or encodable integer pc offset
178572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr x0, #2
178672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
178772062f5744557e270a38192554c3126ea5f97434Tim Northover
178872062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
178972062f5744557e270a38192554c3126ea5f97434Tim Northover// Load/store exclusive
179072062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
179172062f5744557e270a38192554c3126ea5f97434Tim Northover
179272062f5744557e270a38192554c3126ea5f97434Tim Northover       stxrb w2, x3, [x4, #20]
179372062f5744557e270a38192554c3126ea5f97434Tim Northover       stlxrh w10, w11, [w2]
179472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: expected '#0'
179572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stxrb w2, x3, [x4, #20]
179672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
179772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
179872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stlxrh w10, w11, [w2]
179972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
180072062f5744557e270a38192554c3126ea5f97434Tim Northover
180172062f5744557e270a38192554c3126ea5f97434Tim Northover       stlxr  x20, w21, [sp]
180272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
180372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stlxr  x20, w21, [sp]
180472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                ^
180572062f5744557e270a38192554c3126ea5f97434Tim Northover
180672062f5744557e270a38192554c3126ea5f97434Tim Northover       ldxr   sp, [sp]
180772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
180872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldxr   sp, [sp]
180972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                ^
181072062f5744557e270a38192554c3126ea5f97434Tim Northover
181172062f5744557e270a38192554c3126ea5f97434Tim Northover       stxp x1, x2, x3, [x4]
181272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
181372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stxp x1, x2,  x3, [x4]
181472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
181572062f5744557e270a38192554c3126ea5f97434Tim Northover
181672062f5744557e270a38192554c3126ea5f97434Tim Northover       stlxp w5, x1, w4, [x5]
181772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
181872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stlxp w5, x1, w4, [x5]
181972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
182072062f5744557e270a38192554c3126ea5f97434Tim Northover
182172062f5744557e270a38192554c3126ea5f97434Tim Northover       stlxp w17, w6, x7, [x22]
182272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
182372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stlxp w17, w6, x7, [x22]
182472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
182572062f5744557e270a38192554c3126ea5f97434Tim Northover
182672062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
182772062f5744557e270a38192554c3126ea5f97434Tim Northover// Load/store (unscaled immediate)
182872062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
182972062f5744557e270a38192554c3126ea5f97434Tim Northover
183072062f5744557e270a38192554c3126ea5f97434Tim Northover        ldurb w2, [sp, #256]
183172062f5744557e270a38192554c3126ea5f97434Tim Northover        sturh w17, [x1, #256]
183272062f5744557e270a38192554c3126ea5f97434Tim Northover        ldursw x20, [x1, #256]
183372062f5744557e270a38192554c3126ea5f97434Tim Northover        ldur x12, [sp, #256]
1834b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected integer in range [-256, 255]
183572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ldurb w2, [sp, #256]
183672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
1837b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
183872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sturh w17, [x1, #256]
183972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                    ^
1840b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
184172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldursw x20, [x1, #256]
184272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
1843b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
184472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldur x12, [sp, #256]
184572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
184672062f5744557e270a38192554c3126ea5f97434Tim Northover
184772062f5744557e270a38192554c3126ea5f97434Tim Northover        stur h2, [x2, #-257]
184872062f5744557e270a38192554c3126ea5f97434Tim Northover        stur b2, [x2, #-257]
184972062f5744557e270a38192554c3126ea5f97434Tim Northover        ldursb x9, [sp, #-257]
185072062f5744557e270a38192554c3126ea5f97434Tim Northover        ldur w2, [x30, #-257]
185172062f5744557e270a38192554c3126ea5f97434Tim Northover        stur q9, [x20, #-257]
1852b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected integer in range [-256, 255]
185372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stur h2, [x2, #-257]
185472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
1855b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
185672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stur b2, [x2, #-257]
185772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
1858b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
185972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldursb x9, [sp, #-257]
186072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                    ^
1861b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
186272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldur w2, [x30, #-257]
186372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
1864b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
186572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stur q9, [x20, #-257]
186672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
186772062f5744557e270a38192554c3126ea5f97434Tim Northover
186872062f5744557e270a38192554c3126ea5f97434Tim Northover        prfum pstl3strm, [xzr]
186972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
187072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         prfum pstl3strm, [xzr]
187172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
187272062f5744557e270a38192554c3126ea5f97434Tim Northover
187372062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
187472062f5744557e270a38192554c3126ea5f97434Tim Northover// Load-store register (immediate post-indexed)
187572062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
187672062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr x3, [x4, #25], #0
187772062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr x4, [x9, #0], #4
1878b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected symbolic reference or integer in range [0, 32760]
187972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr x3, [x4, #25], #0
188072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
188172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
188272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr x4, [x9, #0], #4
188372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
188472062f5744557e270a38192554c3126ea5f97434Tim Northover
188572062f5744557e270a38192554c3126ea5f97434Tim Northover        strb w1, [x19], #256
188672062f5744557e270a38192554c3126ea5f97434Tim Northover        strb w9, [sp], #-257
188772062f5744557e270a38192554c3126ea5f97434Tim Northover        strh w1, [x19], #256
188872062f5744557e270a38192554c3126ea5f97434Tim Northover        strh w9, [sp], #-257
188972062f5744557e270a38192554c3126ea5f97434Tim Northover        str w1, [x19], #256
189072062f5744557e270a38192554c3126ea5f97434Tim Northover        str w9, [sp], #-257
1891b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected integer in range [-256, 255]
189272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         strb w1, [x19], #256
189372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
1894b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
189572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         strb w9, [sp], #-257
189672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
1897b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
189872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         strh w1, [x19], #256
189972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
1900b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
190172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         strh w9, [sp], #-257
190272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
1903b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
190472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str w1, [x19], #256
190572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
1906b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
190772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str w9, [sp], #-257
190872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
190972062f5744557e270a38192554c3126ea5f97434Tim Northover
191072062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrb w1, [x19], #256
191172062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrb w9, [sp], #-257
191272062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrh w1, [x19], #256
191372062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrh w9, [sp], #-257
191472062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr w1, [x19], #256
191572062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr w9, [sp], #-257
1916b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected integer in range [-256, 255]
191772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrb w1, [x19], #256
191872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
1919b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
192072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrb w9, [sp], #-257
192172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
1922b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
192372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrh w1, [x19], #256
192472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
1925b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
192672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrh w9, [sp], #-257
192772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
1928b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
192972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr w1, [x19], #256
193072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
1931b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
193272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr w9, [sp], #-257
193372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
193472062f5744557e270a38192554c3126ea5f97434Tim Northover
193572062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsb x2, [x3], #256
193672062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsb x22, [x13], #-257
193772062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsh x2, [x3], #256
193872062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsh x22, [x13], #-257
193972062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsw x2, [x3], #256
194072062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsw x22, [x13], #-257
1941b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected integer in range [-256, 255]
194272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsb x2, [x3], #256
194372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
1944b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
194572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsb x22, [x13], #-257
194672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
1947b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
194872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsh x2, [x3], #256
194972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
1950b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
195172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsh x22, [x13], #-257
195272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
1953b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
195472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsw x2, [x3], #256
195572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
1956b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
195772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsw x22, [x13], #-257
195872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
195972062f5744557e270a38192554c3126ea5f97434Tim Northover
196072062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsb w2, [x3], #256
196172062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsb w22, [x13], #-257
196272062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsh w2, [x3], #256
196372062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsh w22, [x13], #-257
1964b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected integer in range [-256, 255]
196572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsb w2, [x3], #256
196672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
1967b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
196872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsb w22, [x13], #-257
196972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
1970b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
197172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsh w2, [x3], #256
197272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
1973b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
197472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsh w22, [x13], #-257
197572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
197672062f5744557e270a38192554c3126ea5f97434Tim Northover
197772062f5744557e270a38192554c3126ea5f97434Tim Northover        str b3, [x3], #256
197872062f5744557e270a38192554c3126ea5f97434Tim Northover        str b3, [x13], #-257
197972062f5744557e270a38192554c3126ea5f97434Tim Northover        str h3, [x3], #256
198072062f5744557e270a38192554c3126ea5f97434Tim Northover        str h3, [x13], #-257
198172062f5744557e270a38192554c3126ea5f97434Tim Northover        str s3, [x3], #256
198272062f5744557e270a38192554c3126ea5f97434Tim Northover        str s3, [x13], #-257
198372062f5744557e270a38192554c3126ea5f97434Tim Northover        str d3, [x3], #256
198472062f5744557e270a38192554c3126ea5f97434Tim Northover        str d3, [x13], #-257
198572062f5744557e270a38192554c3126ea5f97434Tim Northover        str q3, [x3], #256
198672062f5744557e270a38192554c3126ea5f97434Tim Northover        str q3, [x13], #-257
1987b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected integer in range [-256, 255]
198872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str b3, [x3], #256
198972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
1990b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
199172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str b3, [x13], #-257
199272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
1993b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
199472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str h3, [x3], #256
199572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
1996b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
199772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str h3, [x13], #-257
199872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
1999b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
200072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str s3, [x3], #256
200172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
2002b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
200372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str s3, [x13], #-257
200472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
2005b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
200672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str d3, [x3], #256
200772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
2008b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
200972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str d3, [x13], #-257
201072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
2011b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
201272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str q3, [x3], #256
201372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
2014b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
201572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str q3, [x13], #-257
201672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
201772062f5744557e270a38192554c3126ea5f97434Tim Northover
201872062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr b3, [x3], #256
201972062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr b3, [x13], #-257
202072062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr h3, [x3], #256
202172062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr h3, [x13], #-257
202272062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr s3, [x3], #256
202372062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr s3, [x13], #-257
202472062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr d3, [x3], #256
202572062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr d3, [x13], #-257
202672062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr q3, [x3], #256
202772062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr q3, [x13], #-257
2028b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected integer in range [-256, 255]
202972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr b3, [x3], #256
203072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
2031b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
203272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr b3, [x13], #-257
203372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
2034b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
203572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr h3, [x3], #256
203672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
2037b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
203872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr h3, [x13], #-257
203972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
2040b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
204172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr s3, [x3], #256
204272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
2043b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
204472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr s3, [x13], #-257
204572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
2046b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
204772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr d3, [x3], #256
204872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
2049b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
205072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr d3, [x13], #-257
205172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
2052b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
205372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr q3, [x3], #256
205472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
2055b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
205672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr q3, [x13], #-257
205772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
205872062f5744557e270a38192554c3126ea5f97434Tim Northover
205972062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
206072062f5744557e270a38192554c3126ea5f97434Tim Northover// Load-store register (immediate pre-indexed)
206172062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
206272062f5744557e270a38192554c3126ea5f97434Tim Northover
206372062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr x3, [x4]!
206472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error:
206572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr x3, [x4]!
206672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
206772062f5744557e270a38192554c3126ea5f97434Tim Northover
206872062f5744557e270a38192554c3126ea5f97434Tim Northover        strb w1, [x19, #256]!
206972062f5744557e270a38192554c3126ea5f97434Tim Northover        strb w9, [sp, #-257]!
207072062f5744557e270a38192554c3126ea5f97434Tim Northover        strh w1, [x19, #256]!
207172062f5744557e270a38192554c3126ea5f97434Tim Northover        strh w9, [sp, #-257]!
207272062f5744557e270a38192554c3126ea5f97434Tim Northover        str w1, [x19, #256]!
207372062f5744557e270a38192554c3126ea5f97434Tim Northover        str w9, [sp, #-257]!
207472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
207572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         strb w1, [x19, #256]!
207672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                             ^
2077b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
207872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         strb w9, [sp, #-257]!
207972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
208072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
208172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         strh w1, [x19, #256]!
208272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                             ^
2083b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
208472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         strh w9, [sp, #-257]!
208572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
208672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
208772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str w1, [x19, #256]!
208872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                            ^
2089b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
209072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str w9, [sp, #-257]!
209172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
209272062f5744557e270a38192554c3126ea5f97434Tim Northover
209372062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrb w1, [x19, #256]!
209472062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrb w9, [sp, #-257]!
209572062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrh w1, [x19, #256]!
209672062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrh w9, [sp, #-257]!
209772062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr w1, [x19, #256]!
209872062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr w9, [sp, #-257]!
209972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
210072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrb w1, [x19, #256]!
210172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                             ^
2102b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
210372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrb w9, [sp, #-257]!
210472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
210572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
210672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrh w1, [x19, #256]!
210772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                             ^
2108b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
210972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrh w9, [sp, #-257]!
211072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
211172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
211272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr w1, [x19, #256]!
211372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                            ^
2114b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
211572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr w9, [sp, #-257]!
211672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
211772062f5744557e270a38192554c3126ea5f97434Tim Northover
211872062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsb x2, [x3, #256]!
211972062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsb x22, [x13, #-257]!
212072062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsh x2, [x3, #256]!
212172062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsh x22, [x13, #-257]!
212272062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsw x2, [x3, #256]!
212372062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsw x22, [x13, #-257]!
212472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
212572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsb x2, [x3, #256]!
212672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                             ^
2127b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
212872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsb x22, [x13, #-257]!
212972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                    ^
213072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
213172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsh x2, [x3, #256]!
213272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                             ^
2133b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
213472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsh x22, [x13, #-257]!
213572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                    ^
213672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
213772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsw x2, [x3, #256]!
213872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                             ^
2139b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
214072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsw x22, [x13, #-257]!
214172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                    ^
214272062f5744557e270a38192554c3126ea5f97434Tim Northover
214372062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsb w2, [x3, #256]!
214472062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsb w22, [x13, #-257]!
214572062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsh w2, [x3, #256]!
214672062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsh w22, [x13, #-257]!
214772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
214872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsb w2, [x3, #256]!
214972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                             ^
2150b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
215172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsb w22, [x13, #-257]!
215272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                    ^
215372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
215472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsh w2, [x3, #256]!
215572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                             ^
2156b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
215772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsh w22, [x13, #-257]!
215872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                    ^
215972062f5744557e270a38192554c3126ea5f97434Tim Northover
216072062f5744557e270a38192554c3126ea5f97434Tim Northover        str b3, [x3, #256]!
216172062f5744557e270a38192554c3126ea5f97434Tim Northover        str b3, [x13, #-257]!
216272062f5744557e270a38192554c3126ea5f97434Tim Northover        str h3, [x3, #256]!
216372062f5744557e270a38192554c3126ea5f97434Tim Northover        str h3, [x13, #-257]!
216472062f5744557e270a38192554c3126ea5f97434Tim Northover        str s3, [x3, #256]!
216572062f5744557e270a38192554c3126ea5f97434Tim Northover        str s3, [x13, #-257]!
216672062f5744557e270a38192554c3126ea5f97434Tim Northover        str d3, [x3, #256]!
216772062f5744557e270a38192554c3126ea5f97434Tim Northover        str d3, [x13, #-257]!
216872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
216972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str b3, [x3, #256]!
217072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
2171b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
217272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str b3, [x13, #-257]!
217372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
217472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
217572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str h3, [x3, #256]!
217672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
2177b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
217872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str h3, [x13, #-257]!
217972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
218072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
218172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str s3, [x3, #256]!
218272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
2183b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
218472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str s3, [x13, #-257]!
218572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
218672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
218772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str d3, [x3, #256]!
218872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
2189b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
219072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str d3, [x13, #-257]!
219172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
219272062f5744557e270a38192554c3126ea5f97434Tim Northover
219372062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr b3, [x3, #256]!
219472062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr b3, [x13, #-257]!
219572062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr h3, [x3, #256]!
219672062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr h3, [x13, #-257]!
219772062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr s3, [x3, #256]!
219872062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr s3, [x13, #-257]!
219972062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr d3, [x3, #256]!
220072062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr d3, [x13, #-257]!
220172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
220272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr b3, [x3, #256]!
220372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
2204b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
220572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr b3, [x13, #-257]!
220672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
220772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
220872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr h3, [x3, #256]!
220972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
2210b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
221172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr h3, [x13, #-257]!
221272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
221372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
221472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr s3, [x3, #256]!
221572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
2216b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
221772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr s3, [x13, #-257]!
221872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
221972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
222072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr d3, [x3, #256]!
222172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
2222b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
222372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr d3, [x13, #-257]!
222472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
222572062f5744557e270a38192554c3126ea5f97434Tim Northover
222672062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
222772062f5744557e270a38192554c3126ea5f97434Tim Northover// Load/store (unprivileged)
222872062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
222972062f5744557e270a38192554c3126ea5f97434Tim Northover
223072062f5744557e270a38192554c3126ea5f97434Tim Northover        ldtrb w2, [sp, #256]
223172062f5744557e270a38192554c3126ea5f97434Tim Northover        sttrh w17, [x1, #256]
223272062f5744557e270a38192554c3126ea5f97434Tim Northover        ldtrsw x20, [x1, #256]
223372062f5744557e270a38192554c3126ea5f97434Tim Northover        ldtr x12, [sp, #256]
2234b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected integer in range [-256, 255]
223572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ldtrb w2, [sp, #256]
223672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
2237b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
223872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sttrh w17, [x1, #256]
223972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                    ^
2240b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
224172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldtrsw x20, [x1, #256]
224272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
2243b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
224472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldtr x12, [sp, #256]
224572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
224672062f5744557e270a38192554c3126ea5f97434Tim Northover
224772062f5744557e270a38192554c3126ea5f97434Tim Northover        sttr h2, [x2, #-257]
224872062f5744557e270a38192554c3126ea5f97434Tim Northover        sttr b2, [x2, #-257]
224972062f5744557e270a38192554c3126ea5f97434Tim Northover        ldtrsb x9, [sp, #-257]
225072062f5744557e270a38192554c3126ea5f97434Tim Northover        ldtr w2, [x30, #-257]
225172062f5744557e270a38192554c3126ea5f97434Tim Northover        sttr q9, [x20, #-257]
225272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
225372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sttr h2, [x2, #-257]
2254b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT:              ^
225572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
225672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sttr b2, [x2, #-257]
2257b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT:              ^
2258b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
225972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldtrsb x9, [sp, #-257]
226072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                    ^
2261b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
226272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldtr w2, [x30, #-257]
226372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
226472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
226572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sttr q9, [x20, #-257]
226672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
226772062f5744557e270a38192554c3126ea5f97434Tim Northover
226872062f5744557e270a38192554c3126ea5f97434Tim Northover
226972062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
227072062f5744557e270a38192554c3126ea5f97434Tim Northover// Load/store (unsigned immediate)
227172062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
227272062f5744557e270a38192554c3126ea5f97434Tim Northover
227372062f5744557e270a38192554c3126ea5f97434Tim Northover//// Out of range immediates
227472062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr q0, [x11, #65536]
227572062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr x0, [sp, #32768]
227672062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr w0, [x4, #16384]
227772062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrh w2, [x21, #8192]
227872062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrb w3, [x12, #4096]
2279b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected integer in range [-256, 255]
228072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr q0, [x11, #65536]
228172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
2282b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
228372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr x0, [sp, #32768]
228472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
2285b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
228672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr w0, [x4, #16384]
228772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
2288b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
228972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrh w2, [x21, #8192]
229072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
2291b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
229272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrb w3, [x12, #4096]
229372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
229472062f5744557e270a38192554c3126ea5f97434Tim Northover
229572062f5744557e270a38192554c3126ea5f97434Tim Northover//// Misaligned addresses
229672062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr w0, [x0, #2]
229772062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsh w2, [x0, #123]
229872062f5744557e270a38192554c3126ea5f97434Tim Northover        str q0, [x0, #8]
229972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: too few operands for instruction
230072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr w0, [x0, #2]
230172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
230272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: too few operands for instruction
230372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsh w2, [x0, #123]
230472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
230572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: too few operands for instruction
230672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str q0, [x0, #8]
230772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
230872062f5744557e270a38192554c3126ea5f97434Tim Northover
230972062f5744557e270a38192554c3126ea5f97434Tim Northover//// 32-bit addresses
231072062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr w0, [w20]
231172062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsh x3, [wsp]
231272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
231372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr w0, [w20]
231472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
231572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
231672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsh x3, [wsp]
231772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                    ^
231872062f5744557e270a38192554c3126ea5f97434Tim Northover
231972062f5744557e270a38192554c3126ea5f97434Tim Northover//// Store things
232072062f5744557e270a38192554c3126ea5f97434Tim Northover        strb w0, [wsp]
232172062f5744557e270a38192554c3126ea5f97434Tim Northover        strh w31, [x23, #1]
232272062f5744557e270a38192554c3126ea5f97434Tim Northover        str x5, [x22, #12]
232372062f5744557e270a38192554c3126ea5f97434Tim Northover        str w7, [x12, #16384]
232472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
232572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: strb w0, [wsp]
232672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:           ^
232772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
232872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         strh w31, [x23, #1]
232972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
233072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: too few operands for instruction
233172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str x5, [x22, #12]
233272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
2333b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [-256, 255]
233472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str w7, [x12, #16384]
233572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
233672062f5744557e270a38192554c3126ea5f97434Tim Northover
233772062f5744557e270a38192554c3126ea5f97434Tim Northover//// Bad PRFMs
233872062f5744557e270a38192554c3126ea5f97434Tim Northover        prfm #-1, [sp]
233972062f5744557e270a38192554c3126ea5f97434Tim Northover        prfm #32, [sp, #8]
234072062f5744557e270a38192554c3126ea5f97434Tim Northover        prfm pldl1strm, [w3, #8]
234172062f5744557e270a38192554c3126ea5f97434Tim Northover        prfm wibble, [sp]
234272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: Invalid immediate for instruction
234372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        prfm #-1, [sp]
234472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
234572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: Invalid immediate for instruction
234672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        prfm #32, [sp, #8]
234772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
234872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
234972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        prfm pldl1strm, [w3, #8]
235072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
235172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: operand specifier not recognised
235272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        prfm wibble, [sp]
235372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
235472062f5744557e270a38192554c3126ea5f97434Tim Northover
235572062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
235672062f5744557e270a38192554c3126ea5f97434Tim Northover// Load/store register (register offset)
235772062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
235872062f5744557e270a38192554c3126ea5f97434Tim Northover
235972062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr w3, [xzr, x3]
236072062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr w4, [x0, x4, lsl]
236172062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr w9, [x5, x5, uxtw]
236272062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr w10, [x6, x9, sxtw #2]
236372062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr w11, [x7, w2, lsl #2]
236472062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr w12, [x8, w1, sxtx]
236572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
236672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ldr w3, [xzr, x3]
236772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
236872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected #imm after shift specifier
236972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr w4, [x0, x4, lsl]
237072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                             ^
2371b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'lsl' or 'sxtx' with optional shift of #0 or #2
237272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr w9, [x5, x5, uxtw]
237372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                          ^
2374b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'lsl' or 'sxtx' with optional shift of #0 or #2
237572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr w10, [x6, x9, sxtw #2]
237672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
2377b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'uxtw' or 'sxtw' with optional shift of #0 or #2
237872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr w11, [x7, w2, lsl #2]
237972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
2380b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'uxtw' or 'sxtw' with optional shift of #0 or #2
238172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr w12, [x8, w1, sxtx]
238272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
238372062f5744557e270a38192554c3126ea5f97434Tim Northover
238472062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsb w9, [x4, x2, lsl #-1]
238572062f5744557e270a38192554c3126ea5f97434Tim Northover        strb w9, [x4, x2, lsl #1]
238672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
238772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsb w9, [x4, x2, lsl #-1]
238872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                                 ^
2389b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'lsl' or 'sxtx' with optional shift of #0
239072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         strb w9, [x4, x2, lsl #1]
239172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
239272062f5744557e270a38192554c3126ea5f97434Tim Northover
239372062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsh w9, [x4, x2, lsl #-1]
239472062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr h13, [x4, w2, uxtw #2]
239572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
239672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsh w9, [x4, x2, lsl #-1]
239772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                                 ^
2398b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'uxtw' or 'sxtw' with optional shift of #0 or #1
239972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr h13, [x4, w2, uxtw #2]
2400b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT:                           ^
240172062f5744557e270a38192554c3126ea5f97434Tim Northover
240272062f5744557e270a38192554c3126ea5f97434Tim Northover        str w9, [x5, w9, sxtw #-1]
240372062f5744557e270a38192554c3126ea5f97434Tim Northover        str s3, [sp, w9, uxtw #1]
240472062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsw x9, [x15, x4, sxtx #3]
240572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
240672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str w9, [x5, w9, sxtw #-1]
240772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                                ^
2408b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'uxtw' or 'sxtw' with optional shift of #0 or #2
240972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str s3, [sp, w9, uxtw #1]
2410b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT:                          ^
2411b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'lsl' or 'sxtx' with optional shift of #0 or #2
241272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsw x9, [x15, x4, sxtx #3]
2413b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT:                             ^
241472062f5744557e270a38192554c3126ea5f97434Tim Northover
241572062f5744557e270a38192554c3126ea5f97434Tim Northover        str xzr, [x5, x9, sxtx #-1]
241672062f5744557e270a38192554c3126ea5f97434Tim Northover        prfm pldl3keep, [sp, x20, lsl #2]
241772062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr d3, [x20, wzr, uxtw #4]
241872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
241972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str xzr, [x5, x9, sxtx #-1]
242072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                                 ^
2421b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'lsl' or 'sxtx' with optional shift of #0 or #3
242272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         prfm pldl3keep, [sp, x20, lsl #2]
242372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
2424b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'uxtw' or 'sxtw' with optional shift of #0 or #3
242572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr d3, [x20, wzr, uxtw #4]
242672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
242772062f5744557e270a38192554c3126ea5f97434Tim Northover
242872062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr q5, [sp, x2, lsl #-1]
242972062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr q10, [x20, w4, uxtw #2]
243072062f5744557e270a38192554c3126ea5f97434Tim Northover        str q21, [x20, w4, uxtw #5]
243172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
243272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr q5, [sp, x2, lsl #-1]
243372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                               ^
2434b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'lsl' or 'sxtw' with optional shift of #0 or #4
243572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr q10, [x20, w4, uxtw #2]
243672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
2437b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'lsl' or 'sxtw' with optional shift of #0 or #4
243872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str q21, [x20, w4, uxtw #5]
243972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
244072062f5744557e270a38192554c3126ea5f97434Tim Northover
244172062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
244272062f5744557e270a38192554c3126ea5f97434Tim Northover// Load/store register pair (offset)
244372062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
244472062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp w3, w2, [x4, #1]
244572062f5744557e270a38192554c3126ea5f97434Tim Northover        stp w1, w2, [x3, #253]
244672062f5744557e270a38192554c3126ea5f97434Tim Northover        stp w9, w10, [x5, #256]
244772062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp w11, w12, [x9, #-260]
244872062f5744557e270a38192554c3126ea5f97434Tim Northover        stp wsp, w9, [sp]
2449b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected integer multiple of 4 in range [-256, 252]
245072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp w3, w2, [x4, #1]
2451b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT:                          ^
2452b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 4 in range [-256, 252]
245372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp w1, w2, [x3, #253]
245472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
2455b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 4 in range [-256, 252]
245672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp w9, w10, [x5, #256]
245772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
2458b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 4 in range [-256, 252]
245972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp w11, w12, [x9, #-260]
246072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
246172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
246272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp wsp, w9, [sp]
246372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
246472062f5744557e270a38192554c3126ea5f97434Tim Northover
246572062f5744557e270a38192554c3126ea5f97434Tim Northover        ldpsw x9, x2, [sp, #2]
246672062f5744557e270a38192554c3126ea5f97434Tim Northover        ldpsw x1, x2, [x10, #256]
246772062f5744557e270a38192554c3126ea5f97434Tim Northover        ldpsw x3, x4, [x11, #-260]
2468b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected integer multiple of 4 in range [-256, 252]
246972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldpsw x9, x2, [sp, #2]
247072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
2471b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 4 in range [-256, 252]
247272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldpsw x1, x2, [x10, #256]
247372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
2474b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 4 in range [-256, 252]
247572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldpsw x3, x4, [x11, #-260]
247672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
247772062f5744557e270a38192554c3126ea5f97434Tim Northover
247872062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp x2, x5, [sp, #4]
247972062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp x5, x6, [x9, #512]
248072062f5744557e270a38192554c3126ea5f97434Tim Northover        stp x7, x8, [x10, #-520]
2481b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected integer multiple of 8 in range [-512, 508]
248272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp x2, x5, [sp, #4]
248372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
2484b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 8 in range [-512, 508]
248572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp x5, x6, [x9, #512]
248672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
2487b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 8 in range [-512, 508]
248872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp x7, x8, [x10, #-520]
248972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
249072062f5744557e270a38192554c3126ea5f97434Tim Northover
249172062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp sp, x3, [x10]
249272062f5744557e270a38192554c3126ea5f97434Tim Northover        stp x3, sp, [x9]
249372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
249472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp sp, x3, [x10]
249572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
249672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
249772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp x3, sp, [x9]
249872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
249972062f5744557e270a38192554c3126ea5f97434Tim Northover
250072062f5744557e270a38192554c3126ea5f97434Tim Northover        stp s3, s5, [sp, #-2]
250172062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp s6, s26, [x4, #-260]
250272062f5744557e270a38192554c3126ea5f97434Tim Northover        stp s13, s19, [x5, #256]
2503b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected integer multiple of 4 in range [-256, 252]
250472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp s3, s5, [sp, #-2]
250572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
2506b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 4 in range [-256, 252]
250772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp s6, s26, [x4, #-260]
250872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
2509b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 4 in range [-256, 252]
251072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp s13, s19, [x5, #256]
251172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
251272062f5744557e270a38192554c3126ea5f97434Tim Northover
251372062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp d3, d4, [xzr]
251472062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp d5, d6, [x0, #512]
251572062f5744557e270a38192554c3126ea5f97434Tim Northover        stp d7, d8, [x0, #-520]
251672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
251772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp d3, d4, [xzr]
251872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
2519b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 8 in range [-512, 508]
252072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp d5, d6, [x0, #512]
252172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
2522b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 8 in range [-512, 508]
252372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp d7, d8, [x0, #-520]
252472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
252572062f5744557e270a38192554c3126ea5f97434Tim Northover
252672062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp d3, q2, [sp]
252772062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp q3, q5, [sp, #8]
252872062f5744557e270a38192554c3126ea5f97434Tim Northover        stp q20, q25, [x5, #1024]
252972062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp q30, q15, [x23, #-1040]
253072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
253172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp d3, q2, [sp]
253272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
2533b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 16 in range [-1024, 1016]
253472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp q3, q5, [sp, #8]
253572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
2536b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 16 in range [-1024, 1016]
253772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp q20, q25, [x5, #1024]
253872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
2539b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 16 in range [-1024, 1016]
254072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp q30, q15, [x23, #-1040]
254172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
254272062f5744557e270a38192554c3126ea5f97434Tim Northover
254372062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
254472062f5744557e270a38192554c3126ea5f97434Tim Northover// Load/store register pair (post-indexed)
254572062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
254672062f5744557e270a38192554c3126ea5f97434Tim Northover
254772062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp w3, w2, [x4], #1
254872062f5744557e270a38192554c3126ea5f97434Tim Northover        stp w1, w2, [x3], #253
254972062f5744557e270a38192554c3126ea5f97434Tim Northover        stp w9, w10, [x5], #256
255072062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp w11, w12, [x9], #-260
255172062f5744557e270a38192554c3126ea5f97434Tim Northover        stp wsp, w9, [sp], #0
2552b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected integer multiple of 4 in range [-256, 252]
255372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp w3, w2, [x4], #1
255472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
2555b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 4 in range [-256, 252]
255672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp w1, w2, [x3], #253
255772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
2558b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 4 in range [-256, 252]
255972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp w9, w10, [x5], #256
256072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
2561b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 4 in range [-256, 252]
256272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp w11, w12, [x9], #-260
256372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
256472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
256572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp wsp, w9, [sp], #0
256672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
256772062f5744557e270a38192554c3126ea5f97434Tim Northover
256872062f5744557e270a38192554c3126ea5f97434Tim Northover        ldpsw x9, x2, [sp], #2
256972062f5744557e270a38192554c3126ea5f97434Tim Northover        ldpsw x1, x2, [x10], #256
257072062f5744557e270a38192554c3126ea5f97434Tim Northover        ldpsw x3, x4, [x11], #-260
2571b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected integer multiple of 4 in range [-256, 252]
257272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldpsw x9, x2, [sp], #2
257372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
2574b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 4 in range [-256, 252]
257572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldpsw x1, x2, [x10], #256
257672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
2577b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 4 in range [-256, 252]
257872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldpsw x3, x4, [x11], #-260
257972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
258072062f5744557e270a38192554c3126ea5f97434Tim Northover
258172062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp x2, x5, [sp], #4
258272062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp x5, x6, [x9], #512
258372062f5744557e270a38192554c3126ea5f97434Tim Northover        stp x7, x8, [x10], #-520
2584b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected integer multiple of 8 in range [-512, 508]
258572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp x2, x5, [sp], #4
2586b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT:                           ^
2587b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 8 in range [-512, 508]
258872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp x5, x6, [x9], #512
2589b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT:                           ^
2590b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 8 in range [-512, 508]
259172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp x7, x8, [x10], #-520
2592b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT:                            ^
259372062f5744557e270a38192554c3126ea5f97434Tim Northover
259472062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp sp, x3, [x10], #0
259572062f5744557e270a38192554c3126ea5f97434Tim Northover        stp x3, sp, [x9], #0
259672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
259772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp sp, x3, [x10], #0
259872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
259972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
260072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp x3, sp, [x9], #0
260172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
260272062f5744557e270a38192554c3126ea5f97434Tim Northover
260372062f5744557e270a38192554c3126ea5f97434Tim Northover        stp s3, s5, [sp], #-2
260472062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp s6, s26, [x4], #-260
260572062f5744557e270a38192554c3126ea5f97434Tim Northover        stp s13, s19, [x5], #256
2606b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected integer multiple of 4 in range [-256, 252]
260772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp s3, s5, [sp], #-2
260872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
2609b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 4 in range [-256, 252]
261072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp s6, s26, [x4], #-260
261172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
2612b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 4 in range [-256, 252]
261372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp s13, s19, [x5], #256
261472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
261572062f5744557e270a38192554c3126ea5f97434Tim Northover
261672062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp d3, d4, [xzr], #0
261772062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp d5, d6, [x0], #512
261872062f5744557e270a38192554c3126ea5f97434Tim Northover        stp d7, d8, [x0], #-520
261972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
262072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp d3, d4, [xzr], #0
262172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
2622b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 8 in range [-512, 508]
262372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp d5, d6, [x0], #512
262472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
2625b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 8 in range [-512, 508]
262672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp d7, d8, [x0], #-520
262772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
262872062f5744557e270a38192554c3126ea5f97434Tim Northover
262972062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp d3, q2, [sp], #0
263072062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp q3, q5, [sp], #8
263172062f5744557e270a38192554c3126ea5f97434Tim Northover        stp q20, q25, [x5], #1024
263272062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp q30, q15, [x23], #-1040
263372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
263472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp d3, q2, [sp], #0
263572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
2636b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 16 in range [-1024, 1016]
263772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp q3, q5, [sp], #8
263872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
2639b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 16 in range [-1024, 1016]
264072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp q20, q25, [x5], #1024
264172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
2642b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 16 in range [-1024, 1016]
264372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp q30, q15, [x23], #-1040
264472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
264572062f5744557e270a38192554c3126ea5f97434Tim Northover
264672062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
264772062f5744557e270a38192554c3126ea5f97434Tim Northover// Load/store register pair (pre-indexed)
264872062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
264972062f5744557e270a38192554c3126ea5f97434Tim Northover
265072062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp w3, w2, [x4, #1]!
265172062f5744557e270a38192554c3126ea5f97434Tim Northover        stp w1, w2, [x3, #253]!
265272062f5744557e270a38192554c3126ea5f97434Tim Northover        stp w9, w10, [x5, #256]!
265372062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp w11, w12, [x9, #-260]!
265472062f5744557e270a38192554c3126ea5f97434Tim Northover        stp wsp, w9, [sp, #0]!
2655b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected integer multiple of 4 in range [-256, 252]
265672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp w3, w2, [x4, #1]!
265772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
2658b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 4 in range [-256, 252]
265972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp w1, w2, [x3, #253]!
266072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
2661b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 4 in range [-256, 252]
266272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp w9, w10, [x5, #256]!
266372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
2664b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 4 in range [-256, 252]
266572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp w11, w12, [x9, #-260]!
266672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
266772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
266872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp wsp, w9, [sp, #0]!
266972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
267072062f5744557e270a38192554c3126ea5f97434Tim Northover
267172062f5744557e270a38192554c3126ea5f97434Tim Northover        ldpsw x9, x2, [sp, #2]!
267272062f5744557e270a38192554c3126ea5f97434Tim Northover        ldpsw x1, x2, [x10, #256]!
267372062f5744557e270a38192554c3126ea5f97434Tim Northover        ldpsw x3, x4, [x11, #-260]!
2674b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected integer multiple of 4 in range [-256, 252]
267572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldpsw x9, x2, [sp, #2]!
267672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
2677b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 4 in range [-256, 252]
267872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldpsw x1, x2, [x10, #256]!
267972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
2680b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 4 in range [-256, 252]
268172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldpsw x3, x4, [x11, #-260]!
268272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
268372062f5744557e270a38192554c3126ea5f97434Tim Northover
268472062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp x2, x5, [sp, #4]!
268572062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp x5, x6, [x9, #512]!
268672062f5744557e270a38192554c3126ea5f97434Tim Northover        stp x7, x8, [x10, #-520]!
2687b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected integer multiple of 8 in range [-512, 508]
268872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp x2, x5, [sp, #4]!
268972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
2690b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 8 in range [-512, 508]
269172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp x5, x6, [x9, #512]!
269272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
2693b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 8 in range [-512, 508]
269472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp x7, x8, [x10, #-520]!
269572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
269672062f5744557e270a38192554c3126ea5f97434Tim Northover
269772062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp sp, x3, [x10, #0]!
269872062f5744557e270a38192554c3126ea5f97434Tim Northover        stp x3, sp, [x9, #0]!
269972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
270072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp sp, x3, [x10, #0]!
270172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
270272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
270372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp x3, sp, [x9, #0]!
270472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
270572062f5744557e270a38192554c3126ea5f97434Tim Northover
270672062f5744557e270a38192554c3126ea5f97434Tim Northover        stp s3, s5, [sp, #-2]!
270772062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp s6, s26, [x4, #-260]!
270872062f5744557e270a38192554c3126ea5f97434Tim Northover        stp s13, s19, [x5, #256]!
2709b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected integer multiple of 4 in range [-256, 252]
271072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp s3, s5, [sp, #-2]!
271172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
2712b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 4 in range [-256, 252]
271372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp s6, s26, [x4, #-260]!
271472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
2715b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 4 in range [-256, 252]
271672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp s13, s19, [x5, #256]!
271772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
271872062f5744557e270a38192554c3126ea5f97434Tim Northover
271972062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp d3, d4, [xzr, #0]!
272072062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp d5, d6, [x0, #512]!
272172062f5744557e270a38192554c3126ea5f97434Tim Northover        stp d7, d8, [x0, #-520]!
272272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
272372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp d3, d4, [xzr, #0]!
272472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
2725b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 8 in range [-512, 508]
272672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp d5, d6, [x0, #512]!
272772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
2728b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 8 in range [-512, 508]
272972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp d7, d8, [x0, #-520]!
273072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
273172062f5744557e270a38192554c3126ea5f97434Tim Northover
273272062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp d3, q2, [sp, #0]!
273372062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp q3, q5, [sp, #8]!
273472062f5744557e270a38192554c3126ea5f97434Tim Northover        stp q20, q25, [x5, #1024]!
273572062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp q30, q15, [x23, #-1040]!
273672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
273772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp d3, q2, [sp, #0]!
273872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
2739b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 16 in range [-1024, 1016]
274072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp q3, q5, [sp, #8]!
274172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
2742b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 16 in range [-1024, 1016]
274372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp q20, q25, [x5, #1024]!
274472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
2745b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 16 in range [-1024, 1016]
274672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp q30, q15, [x23, #-1040]!
274772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
274872062f5744557e270a38192554c3126ea5f97434Tim Northover
274972062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
275072062f5744557e270a38192554c3126ea5f97434Tim Northover// Load/store register pair (offset)
275172062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
275272062f5744557e270a38192554c3126ea5f97434Tim Northover        ldnp w3, w2, [x4, #1]
275372062f5744557e270a38192554c3126ea5f97434Tim Northover        stnp w1, w2, [x3, #253]
275472062f5744557e270a38192554c3126ea5f97434Tim Northover        stnp w9, w10, [x5, #256]
275572062f5744557e270a38192554c3126ea5f97434Tim Northover        ldnp w11, w12, [x9, #-260]
275672062f5744557e270a38192554c3126ea5f97434Tim Northover        stnp wsp, w9, [sp]
2757b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected integer multiple of 4 in range [-256, 252]
275872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldnp w3, w2, [x4, #1]
2759b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT:                           ^
2760b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 4 in range [-256, 252]
276172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stnp w1, w2, [x3, #253]
2762b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT:                           ^
2763b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 4 in range [-256, 252]
276472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stnp w9, w10, [x5, #256]
2765b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT:                            ^
2766b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 4 in range [-256, 252]
276772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldnp w11, w12, [x9, #-260]
2768b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT:                             ^
276972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
277072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stnp wsp, w9, [sp]
2771b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT:              ^
277272062f5744557e270a38192554c3126ea5f97434Tim Northover
277372062f5744557e270a38192554c3126ea5f97434Tim Northover        ldnp x2, x5, [sp, #4]
277472062f5744557e270a38192554c3126ea5f97434Tim Northover        ldnp x5, x6, [x9, #512]
277572062f5744557e270a38192554c3126ea5f97434Tim Northover        stnp x7, x8, [x10, #-520]
2776b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected integer multiple of 8 in range [-512, 508]
277772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldnp x2, x5, [sp, #4]
2778b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT:                           ^
2779b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 8 in range [-512, 508]
278072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldnp x5, x6, [x9, #512]
2781b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT:                           ^
2782b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 8 in range [-512, 508]
278372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stnp x7, x8, [x10, #-520]
2784b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT:                            ^
278572062f5744557e270a38192554c3126ea5f97434Tim Northover
278672062f5744557e270a38192554c3126ea5f97434Tim Northover        ldnp sp, x3, [x10]
278772062f5744557e270a38192554c3126ea5f97434Tim Northover        stnp x3, sp, [x9]
278872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
278972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldnp sp, x3, [x10]
279072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
279172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
279272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stnp x3, sp, [x9]
279372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
279472062f5744557e270a38192554c3126ea5f97434Tim Northover
279572062f5744557e270a38192554c3126ea5f97434Tim Northover        stnp s3, s5, [sp, #-2]
279672062f5744557e270a38192554c3126ea5f97434Tim Northover        ldnp s6, s26, [x4, #-260]
279772062f5744557e270a38192554c3126ea5f97434Tim Northover        stnp s13, s19, [x5, #256]
2798b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected integer multiple of 4 in range [-256, 252]
279972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stnp s3, s5, [sp, #-2]
280072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
2801b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 4 in range [-256, 252]
280272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldnp s6, s26, [x4, #-260]
280372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
2804b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 4 in range [-256, 252]
280572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stnp s13, s19, [x5, #256]
280672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
280772062f5744557e270a38192554c3126ea5f97434Tim Northover
280872062f5744557e270a38192554c3126ea5f97434Tim Northover        ldnp d3, d4, [xzr]
280972062f5744557e270a38192554c3126ea5f97434Tim Northover        ldnp d5, d6, [x0, #512]
281072062f5744557e270a38192554c3126ea5f97434Tim Northover        stnp d7, d8, [x0, #-520]
281172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
281272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldnp d3, d4, [xzr]
281372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
2814b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 8 in range [-512, 508]
281572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldnp d5, d6, [x0, #512]
281672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
2817b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 8 in range [-512, 508]
281872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stnp d7, d8, [x0, #-520]
281972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
282072062f5744557e270a38192554c3126ea5f97434Tim Northover
282172062f5744557e270a38192554c3126ea5f97434Tim Northover        ldnp d3, q2, [sp]
282272062f5744557e270a38192554c3126ea5f97434Tim Northover        ldnp q3, q5, [sp, #8]
282372062f5744557e270a38192554c3126ea5f97434Tim Northover        stnp q20, q25, [x5, #1024]
282472062f5744557e270a38192554c3126ea5f97434Tim Northover        ldnp q30, q15, [x23, #-1040]
282572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
282672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldnp d3, q2, [sp]
282772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
2828b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 16 in range [-1024, 1016]
282972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldnp q3, q5, [sp, #8]
283072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
2831b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 16 in range [-1024, 1016]
283272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stnp q20, q25, [x5, #1024]
283372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
2834b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer multiple of 16 in range [-1024, 1016]
283572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldnp q30, q15, [x23, #-1040]
283672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
283772062f5744557e270a38192554c3126ea5f97434Tim Northover
283872062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
283972062f5744557e270a38192554c3126ea5f97434Tim Northover// Logical (shifted register)
284072062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
284172062f5744557e270a38192554c3126ea5f97434Tim Northover        orr w0, w1, #0xffffffff
284272062f5744557e270a38192554c3126ea5f97434Tim Northover        and x3, x5, #0xffffffffffffffff
2843b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected compatible register or logical immediate
284472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         orr w0, w1, #0xffffffff
284572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
2846b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected compatible register or logical immediate
284772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         and x3, x5, #0xffffffffffffffff
284872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
284972062f5744557e270a38192554c3126ea5f97434Tim Northover
285072062f5744557e270a38192554c3126ea5f97434Tim Northover        ands w3, w9, #0x0
285172062f5744557e270a38192554c3126ea5f97434Tim Northover        eor x2, x0, #0x0
2852b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected compatible register or logical immediate
285372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ands w3, w9, #0x0
285472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
2855b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected compatible register or logical immediate
285672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         eor x2, x0, #0x0
285772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
285872062f5744557e270a38192554c3126ea5f97434Tim Northover
285972062f5744557e270a38192554c3126ea5f97434Tim Northover        eor w3, w5, #0x83
286072062f5744557e270a38192554c3126ea5f97434Tim Northover        eor x9, x20, #0x1234
2861b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected compatible register or logical immediate
286272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         eor w3, w5, #0x83
286372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
2864b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected compatible register or logical immediate
286572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         eor x9, x20, #0x1234
286672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
286772062f5744557e270a38192554c3126ea5f97434Tim Northover
286872062f5744557e270a38192554c3126ea5f97434Tim Northover        and wzr, w4, 0xffff0000
286972062f5744557e270a38192554c3126ea5f97434Tim Northover        eor xzr, x9, #0xffff0000ffff0000
287072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
287172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         and wzr, w4, 0xffff0000
287272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
287372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
287472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         eor xzr, x9, #0xffff0000ffff0000
287572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
287672062f5744557e270a38192554c3126ea5f97434Tim Northover
287772062f5744557e270a38192554c3126ea5f97434Tim Northover        orr w3, wsp, #0xf0f0f0f0
287872062f5744557e270a38192554c3126ea5f97434Tim Northover        ands x3, sp, #0xaaaaaaaaaaaaaaaa
287972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
288072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         orr w3, wsp, #0xf0f0f0f0
288172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
288272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
288372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ands x3, sp, #0xaaaaaaaaaaaaaaaa
288472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
288572062f5744557e270a38192554c3126ea5f97434Tim Northover
288672062f5744557e270a38192554c3126ea5f97434Tim Northover        tst sp, #0xe0e0e0e0e0e0e0e0
288772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
288872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tst sp, #0xe0e0e0e0e0e0e0e0
288972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
289072062f5744557e270a38192554c3126ea5f97434Tim Northover
289172062f5744557e270a38192554c3126ea5f97434Tim Northover        // movi has been removed from the specification. Make sure it's really gone.
289272062f5744557e270a38192554c3126ea5f97434Tim Northover        movi wzr, #0x44444444
289372062f5744557e270a38192554c3126ea5f97434Tim Northover        movi w3, #0xffff
289472062f5744557e270a38192554c3126ea5f97434Tim Northover        movi x9, #0x0000ffff00000000
289587773c318fcee853fb34a80a10c4347d523bdafbTim Northover// CHECK-ERROR: error: invalid operand for instruction
289672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movi wzr, #0x44444444
289772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ^
289887773c318fcee853fb34a80a10c4347d523bdafbTim Northover// CHECK-ERROR: error: invalid operand for instruction
289972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movi w3, #0xffff
290072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ^
290187773c318fcee853fb34a80a10c4347d523bdafbTim Northover// CHECK-ERROR: error: invalid operand for instruction
290272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movi x9, #0x0000ffff00000000
290372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ^
290472062f5744557e270a38192554c3126ea5f97434Tim Northover
290572062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
290672062f5744557e270a38192554c3126ea5f97434Tim Northover// Logical (shifted register)
290772062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
290872062f5744557e270a38192554c3126ea5f97434Tim Northover
290972062f5744557e270a38192554c3126ea5f97434Tim Northover        //// Out of range shifts
291072062f5744557e270a38192554c3126ea5f97434Tim Northover        and w2, w24, w6, lsl #-1
291172062f5744557e270a38192554c3126ea5f97434Tim Northover        and w4, w6, w12, lsl #32
291272062f5744557e270a38192554c3126ea5f97434Tim Northover        and x4, x6, x12, lsl #64
291372062f5744557e270a38192554c3126ea5f97434Tim Northover        and x2, x5, x11, asr
291472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: expected integer shift amount
291572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         and w2, w24, w6, lsl #-1
291672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                               ^
2917b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'lsl', 'lsr' or 'asr' with optional integer in range [0, 31]
291872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         and w4, w6, w12, lsl #32
291972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                          ^
2920b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'lsl', 'lsr' or 'asr' with optional integer in range [0, 63]
292172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         and x4, x6, x12, lsl #64
292272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                          ^
292372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected #imm after shift specifier
292472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         and x2, x5, x11, asr
292572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                             ^
292672062f5744557e270a38192554c3126ea5f97434Tim Northover
292772062f5744557e270a38192554c3126ea5f97434Tim Northover        //// sp not allowed
292872062f5744557e270a38192554c3126ea5f97434Tim Northover        orn wsp, w3, w5
292972062f5744557e270a38192554c3126ea5f97434Tim Northover        bics x20, sp, x9, lsr #0
293072062f5744557e270a38192554c3126ea5f97434Tim Northover        orn x2, x6, sp, lsl #3
293172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
293272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         orn wsp, w3, w5
293372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
293472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
293572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         bics x20, sp, x9, lsr #0
293672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
293772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
293872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         orn x2, x6, sp, lsl #3
293972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
294072062f5744557e270a38192554c3126ea5f97434Tim Northover
294172062f5744557e270a38192554c3126ea5f97434Tim Northover        //// Mismatched registers
294272062f5744557e270a38192554c3126ea5f97434Tim Northover        and x3, w2, w1
294372062f5744557e270a38192554c3126ea5f97434Tim Northover        ands w1, x12, w2
294472062f5744557e270a38192554c3126ea5f97434Tim Northover        and x4, x5, w6, lsl #12
294572062f5744557e270a38192554c3126ea5f97434Tim Northover        orr w2, w5, x7, asr #0
294672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
294772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         and x3, w2, w1
294872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
294972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
295072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ands w1, x12, w2
295172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
2952b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected compatible register or logical immediate
295372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         and x4, x5, w6, lsl #12
295472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
2955b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected compatible register or logical immediate
295672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         orr w2, w5, x7, asr #0
295772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
295872062f5744557e270a38192554c3126ea5f97434Tim Northover
295972062f5744557e270a38192554c3126ea5f97434Tim Northover        //// Shifts should not be allowed on mov
296072062f5744557e270a38192554c3126ea5f97434Tim Northover        mov w3, w7, lsl #13
296172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
296272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         mov w3, w7, lsl #13
296372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
296472062f5744557e270a38192554c3126ea5f97434Tim Northover
296572062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
296672062f5744557e270a38192554c3126ea5f97434Tim Northover// Move wide (immediate)
296772062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
296872062f5744557e270a38192554c3126ea5f97434Tim Northover
296972062f5744557e270a38192554c3126ea5f97434Tim Northover        movz w3, #65536, lsl #0
297072062f5744557e270a38192554c3126ea5f97434Tim Northover        movz w4, #65536
297172062f5744557e270a38192554c3126ea5f97434Tim Northover        movn w1, #2, lsl #1
297272062f5744557e270a38192554c3126ea5f97434Tim Northover        movk w3, #0, lsl #-1
297372062f5744557e270a38192554c3126ea5f97434Tim Northover        movn w2, #-1, lsl #0
297472062f5744557e270a38192554c3126ea5f97434Tim Northover        movz x3, #-1
297572062f5744557e270a38192554c3126ea5f97434Tim Northover        movk w3, #1, lsl #32
297672062f5744557e270a38192554c3126ea5f97434Tim Northover        movn x2, #12, lsl #64
2977b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected relocated symbol or integer in range [0, 65535]
297872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movz w3, #65536, lsl #0
297972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
2980b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected relocated symbol or integer in range [0, 65535]
298172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movz w4, #65536
298272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
2983b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected relocated symbol or integer in range [0, 65535]
298472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movn w1, #2, lsl #1
298572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
298672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: only 'lsl #+N' valid after immediate
298772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movk w3, #0, lsl #-1
298872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
2989b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected relocated symbol or integer in range [0, 65535]
299072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movn w2, #-1, lsl #0
299172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
2992b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected relocated symbol or integer in range [0, 65535]
299372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movz x3, #-1
299472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
2995b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected relocated symbol or integer in range [0, 65535]
299672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movk w3, #1, lsl #32
299772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
2998b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected relocated symbol or integer in range [0, 65535]
299972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movn x2, #12, lsl #64
300072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
300172062f5744557e270a38192554c3126ea5f97434Tim Northover
300272062f5744557e270a38192554c3126ea5f97434Tim Northover        movz x12, #:abs_g0:sym, lsl #16
300372062f5744557e270a38192554c3126ea5f97434Tim Northover        movz x12, #:abs_g0:sym, lsl #0
300472062f5744557e270a38192554c3126ea5f97434Tim Northover        movn x2, #:abs_g0:sym
300572062f5744557e270a38192554c3126ea5f97434Tim Northover        movk w3, #:abs_g0:sym
300672062f5744557e270a38192554c3126ea5f97434Tim Northover        movz x3, #:abs_g0_nc:sym
300772062f5744557e270a38192554c3126ea5f97434Tim Northover        movn x4, #:abs_g0_nc:sym
3008b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected relocated symbol or integer in range [0, 65535]
300972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movz x12, #:abs_g0:sym, lsl #16
301072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                                 ^
3011b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected relocated symbol or integer in range [0, 65535]
301272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movz x12, #:abs_g0:sym, lsl #0
301372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                                 ^
3014b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected relocated symbol or integer in range [0, 65535]
301572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movn x2, #:abs_g0:sym
301672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
3017b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected relocated symbol or integer in range [0, 65535]
301872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movk w3, #:abs_g0:sym
301972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
3020b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected relocated symbol or integer in range [0, 65535]
302172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movz x3, #:abs_g0_nc:sym
302272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
3023b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected relocated symbol or integer in range [0, 65535]
302472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movn x4, #:abs_g0_nc:sym
302572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
302672062f5744557e270a38192554c3126ea5f97434Tim Northover
302772062f5744557e270a38192554c3126ea5f97434Tim Northover        movn x2, #:abs_g1:sym
302872062f5744557e270a38192554c3126ea5f97434Tim Northover        movk w3, #:abs_g1:sym
302972062f5744557e270a38192554c3126ea5f97434Tim Northover        movz x3, #:abs_g1_nc:sym
303072062f5744557e270a38192554c3126ea5f97434Tim Northover        movn x4, #:abs_g1_nc:sym
3031b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected relocated symbol or integer in range [0, 65535]
303272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movn x2, #:abs_g1:sym
303372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
3034b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected relocated symbol or integer in range [0, 65535]
303572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movk w3, #:abs_g1:sym
303672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
3037b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected relocated symbol or integer in range [0, 65535]
303872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movz x3, #:abs_g1_nc:sym
303972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
3040b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected relocated symbol or integer in range [0, 65535]
304172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movn x4, #:abs_g1_nc:sym
304272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
304372062f5744557e270a38192554c3126ea5f97434Tim Northover
304472062f5744557e270a38192554c3126ea5f97434Tim Northover        movz w12, #:abs_g2:sym
304572062f5744557e270a38192554c3126ea5f97434Tim Northover        movn x12, #:abs_g2:sym
304672062f5744557e270a38192554c3126ea5f97434Tim Northover        movk x13, #:abs_g2:sym
304772062f5744557e270a38192554c3126ea5f97434Tim Northover        movk w3, #:abs_g2_nc:sym
304872062f5744557e270a38192554c3126ea5f97434Tim Northover        movz x13, #:abs_g2_nc:sym
304972062f5744557e270a38192554c3126ea5f97434Tim Northover        movn x24, #:abs_g2_nc:sym
3050b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected relocated symbol or integer in range [0, 65535]
305172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movz w12, #:abs_g2:sym
305272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
3053b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected relocated symbol or integer in range [0, 65535]
305472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movn x12, #:abs_g2:sym
305572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
3056b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected relocated symbol or integer in range [0, 65535]
305772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movk x13, #:abs_g2:sym
305872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
3059b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected relocated symbol or integer in range [0, 65535]
306072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movk w3, #:abs_g2_nc:sym
306172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
3062b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected relocated symbol or integer in range [0, 65535]
306372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movz x13, #:abs_g2_nc:sym
306472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
3065b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected relocated symbol or integer in range [0, 65535]
306672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movn x24, #:abs_g2_nc:sym
306772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
306872062f5744557e270a38192554c3126ea5f97434Tim Northover
306972062f5744557e270a38192554c3126ea5f97434Tim Northover        movn x19, #:abs_g3:sym
307072062f5744557e270a38192554c3126ea5f97434Tim Northover        movz w20, #:abs_g3:sym
307172062f5744557e270a38192554c3126ea5f97434Tim Northover        movk w21, #:abs_g3:sym
3072b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected relocated symbol or integer in range [0, 65535]
307372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movn x19, #:abs_g3:sym
307472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
3075b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected relocated symbol or integer in range [0, 65535]
307672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movz w20, #:abs_g3:sym
307772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
3078b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected relocated symbol or integer in range [0, 65535]
307972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movk w21, #:abs_g3:sym
308072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
308172062f5744557e270a38192554c3126ea5f97434Tim Northover
308272062f5744557e270a38192554c3126ea5f97434Tim Northover        movk x19, #:abs_g0_s:sym
308372062f5744557e270a38192554c3126ea5f97434Tim Northover        movk w23, #:abs_g0_s:sym
3084b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected relocated symbol or integer in range [0, 65535]
308572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movk x19, #:abs_g0_s:sym
308672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
3087b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected relocated symbol or integer in range [0, 65535]
308872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movk w23, #:abs_g0_s:sym
308972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
309072062f5744557e270a38192554c3126ea5f97434Tim Northover
309172062f5744557e270a38192554c3126ea5f97434Tim Northover        movk x19, #:abs_g1_s:sym
309272062f5744557e270a38192554c3126ea5f97434Tim Northover        movk w23, #:abs_g1_s:sym
3093b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected relocated symbol or integer in range [0, 65535]
309472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movk x19, #:abs_g1_s:sym
309572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
3096b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected relocated symbol or integer in range [0, 65535]
309772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movk w23, #:abs_g1_s:sym
309872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
309972062f5744557e270a38192554c3126ea5f97434Tim Northover
310072062f5744557e270a38192554c3126ea5f97434Tim Northover        movz w2, #:abs_g2_s:sym
310172062f5744557e270a38192554c3126ea5f97434Tim Northover        movn w29, #:abs_g2_s:sym
310272062f5744557e270a38192554c3126ea5f97434Tim Northover        movk x19, #:abs_g2_s:sym
310372062f5744557e270a38192554c3126ea5f97434Tim Northover        movk w23, #:abs_g2_s:sym
3104b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected relocated symbol or integer in range [0, 65535]
310572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movz w2, #:abs_g2_s:sym
310672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                    ^
3107b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected relocated symbol or integer in range [0, 65535]
310872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movn w29, #:abs_g2_s:sym
310972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
3110b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected relocated symbol or integer in range [0, 65535]
311172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movk x19, #:abs_g2_s:sym
311272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
3113b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected relocated symbol or integer in range [0, 65535]
311472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movk w23, #:abs_g2_s:sym
311572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
311672062f5744557e270a38192554c3126ea5f97434Tim Northover
311772062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
311872062f5744557e270a38192554c3126ea5f97434Tim Northover// PC-relative addressing
311972062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
312072062f5744557e270a38192554c3126ea5f97434Tim Northover
312172062f5744557e270a38192554c3126ea5f97434Tim Northover        adr sp, loc             // expects xzr
312272062f5744557e270a38192554c3126ea5f97434Tim Northover        adrp x3, #20            // Immediate unaligned
312372062f5744557e270a38192554c3126ea5f97434Tim Northover        adrp w2, loc            // 64-bit register needed
312472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
312572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         adr sp, loc
312672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3127b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected label or encodable integer pc offset
312872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         adrp x3, #20
312972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
313072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
313172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         adrp w2, loc
313272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
313372062f5744557e270a38192554c3126ea5f97434Tim Northover
313472062f5744557e270a38192554c3126ea5f97434Tim Northover        adr x9, #1048576
313572062f5744557e270a38192554c3126ea5f97434Tim Northover        adr x2, #-1048577
313672062f5744557e270a38192554c3126ea5f97434Tim Northover        adrp x9, #4294967296
313772062f5744557e270a38192554c3126ea5f97434Tim Northover        adrp x20, #-4294971392
3138b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected label or encodable integer pc offset
313972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         adr x9, #1048576
314072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
3141b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected label or encodable integer pc offset
314272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         adr x2, #-1048577
314372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
3144b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected label or encodable integer pc offset
314572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         adrp x9, #4294967296
314672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
3147b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected label or encodable integer pc offset
314872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         adrp x20, #-4294971392
314972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
315072062f5744557e270a38192554c3126ea5f97434Tim Northover
315172062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
315272062f5744557e270a38192554c3126ea5f97434Tim Northover// System
315372062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
315472062f5744557e270a38192554c3126ea5f97434Tim Northover
315572062f5744557e270a38192554c3126ea5f97434Tim Northover        hint #-1
315672062f5744557e270a38192554c3126ea5f97434Tim Northover        hint #128
3157b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected integer in range [0, 127]
315872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         hint #-1
315972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
3160b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 127]
316172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         hint #128
316272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
316372062f5744557e270a38192554c3126ea5f97434Tim Northover
316472062f5744557e270a38192554c3126ea5f97434Tim Northover        clrex #-1
316572062f5744557e270a38192554c3126ea5f97434Tim Northover        clrex #16
3166b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 15]
316772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         clrex #-1
316872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:               ^
3169b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 15]
317072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         clrex #16
317172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:               ^
317272062f5744557e270a38192554c3126ea5f97434Tim Northover
317372062f5744557e270a38192554c3126ea5f97434Tim Northover        dsb #-1
317472062f5744557e270a38192554c3126ea5f97434Tim Northover        dsb #16
317572062f5744557e270a38192554c3126ea5f97434Tim Northover        dmb #-1
317672062f5744557e270a38192554c3126ea5f97434Tim Northover        dmb #16
317772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: Invalid immediate for instruction
317872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         dsb #-1
317972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
318072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: Invalid immediate for instruction
318172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         dsb #16
318272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
318372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: Invalid immediate for instruction
318472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         dmb #-1
318572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
318672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: Invalid immediate for instruction
318772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         dmb #16
318872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
318972062f5744557e270a38192554c3126ea5f97434Tim Northover
319072062f5744557e270a38192554c3126ea5f97434Tim Northover        isb #-1
319172062f5744557e270a38192554c3126ea5f97434Tim Northover        isb #16
319272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: Invalid immediate for instruction
319372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         isb #-1
319472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
319572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: Invalid immediate for instruction
319672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         isb #16
319772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
319872062f5744557e270a38192554c3126ea5f97434Tim Northover
319972062f5744557e270a38192554c3126ea5f97434Tim Northover        msr daifset, x4
3200b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover        msr spsel, #-1
320172062f5744557e270a38192554c3126ea5f97434Tim Northover        msr spsel #-1
320272062f5744557e270a38192554c3126ea5f97434Tim Northover        msr daifclr, #16
3203b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 15]
320472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr daifset, x4
320572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
3206b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 15]
3207b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT:         msr spsel, #-1
3208b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT:                    ^
3209b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected comma before next operand
321072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr spsel #-1
321172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
3212b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 15]
321372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr daifclr, #16
321472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
321572062f5744557e270a38192554c3126ea5f97434Tim Northover
321672062f5744557e270a38192554c3126ea5f97434Tim Northover        sys #8, c1, c2, #7, x9
321772062f5744557e270a38192554c3126ea5f97434Tim Northover        sys #3, c16, c2, #3, x10
321872062f5744557e270a38192554c3126ea5f97434Tim Northover        sys #2, c11, c16, #5
321972062f5744557e270a38192554c3126ea5f97434Tim Northover        sys #4, c9, c8, #8, xzr
322072062f5744557e270a38192554c3126ea5f97434Tim Northover        sysl x11, #8, c1, c2, #7
322172062f5744557e270a38192554c3126ea5f97434Tim Northover        sysl x13, #3, c16, c2, #3
322272062f5744557e270a38192554c3126ea5f97434Tim Northover        sysl x9, #2, c11, c16, #5
322372062f5744557e270a38192554c3126ea5f97434Tim Northover        sysl x4, #4, c9, c8, #8
3224b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error:  expected integer in range [0, 7]
322572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sys #8, c1, c2, #7, x9
322672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
322772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: Expected cN operand where 0 <= N <= 15
322872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sys #3, c16, c2, #3, x10
322972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
323072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: Expected cN operand where 0 <= N <= 15
323172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sys #2, c11, c16, #5
323272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
3233b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 7]
323472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sys #4, c9, c8, #8, xzr
323572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
3236b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 7]
323772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sysl x11, #8, c1, c2, #7
323872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
323972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: Expected cN operand where 0 <= N <= 15
324072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sysl x13, #3, c16, c2, #3
324172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
324272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: Expected cN operand where 0 <= N <= 15
324372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sysl x9, #2, c11, c16, #5
324472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
3245b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 7]
324672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sysl x4, #4, c9, c8, #8
324772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                              ^
324872062f5744557e270a38192554c3126ea5f97434Tim Northover
324972062f5744557e270a38192554c3126ea5f97434Tim Northover        ic ialluis, x2
325072062f5744557e270a38192554c3126ea5f97434Tim Northover        ic allu, x7
325172062f5744557e270a38192554c3126ea5f97434Tim Northover        ic ivau
325272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: specified IC op does not use a register
325372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ic ialluis, x2
325472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
325572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: operand specifier not recognised
325672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ic allu, x7
325772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:            ^
325872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: specified IC op requires a register
325972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ic ivau
326072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:            ^
326172062f5744557e270a38192554c3126ea5f97434Tim Northover
326272062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi IPAS2E1IS
326372062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi IPAS2LE1IS
326472062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi VMALLE1IS, x12
326572062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi ALLE2IS, x11
326672062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi ALLE3IS, x20
326772062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi VAE1IS
326872062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi VAE2IS
326972062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi VAE3IS
327072062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi ASIDE1IS
327172062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi VAAE1IS
327272062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi ALLE1IS, x0
327372062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi VALE1IS
327472062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi VALE2IS
327572062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi VALE3IS
327672062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi VMALLS12E1IS, xzr
327772062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi VAALE1IS
327872062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi IPAS2E1
327972062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi IPAS2LE1
328072062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi VMALLE1, x9
328172062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi ALLE2, x10
328272062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi ALLE3, x11
328372062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi VAE1
328472062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi VAE2
328572062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi VAE3
328672062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi ASIDE1
328772062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi VAAE1
328872062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi ALLE1, x25
328972062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi VALE1
329072062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi VALE2
329172062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi VALE3
329272062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi VMALLS12E1, x15
329372062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi VAALE1
329472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: specified TLBI op requires a register
329572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi IPAS2E1IS
329672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
329772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: specified TLBI op requires a register
329872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi IPAS2LE1IS
329972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
330072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: specified TLBI op does not use a register
330172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi VMALLE1IS, x12
330272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
330372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: specified TLBI op does not use a register
330472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi ALLE2IS, x11
330572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
330672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: specified TLBI op does not use a register
330772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi ALLE3IS, x20
330872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
330972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: specified TLBI op requires a register
331072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi VAE1IS
331172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
331272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: specified TLBI op requires a register
331372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi VAE2IS
331472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
331572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: specified TLBI op requires a register
331672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi VAE3IS
331772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
331872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: specified TLBI op requires a register
331972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi ASIDE1IS
332072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
332172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: specified TLBI op requires a register
332272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi VAAE1IS
332372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
332472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: specified TLBI op does not use a register
332572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi ALLE1IS, x0
332672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
332772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: specified TLBI op requires a register
332872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi VALE1IS
332972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
333072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: specified TLBI op requires a register
333172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi VALE2IS
333272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
333372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: specified TLBI op requires a register
333472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi VALE3IS
333572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
333672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: specified TLBI op does not use a register
333772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi VMALLS12E1IS, xzr
333872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                            ^
333972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: specified TLBI op requires a register
334072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi VAALE1IS
334172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
334272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: specified TLBI op requires a register
334372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi IPAS2E1
334472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
334572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: specified TLBI op requires a register
334672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi IPAS2LE1
334772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
334872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: specified TLBI op does not use a register
334972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi VMALLE1, x9
335072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
335172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: specified TLBI op does not use a register
335272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi ALLE2, x10
335372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
335472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: specified TLBI op does not use a register
335572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi ALLE3, x11
335672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
335772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: specified TLBI op requires a register
335872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi VAE1
335972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
336072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: specified TLBI op requires a register
336172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi VAE2
336272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
336372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: specified TLBI op requires a register
336472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi VAE3
336572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
336672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: specified TLBI op requires a register
336772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi ASIDE1
336872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
336972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: specified TLBI op requires a register
337072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi VAAE1
337172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
337272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: specified TLBI op does not use a register
337372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi ALLE1, x25
337472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
337572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: specified TLBI op requires a register
337672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi VALE1
337772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
337872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: specified TLBI op requires a register
337972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi VALE2
338072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
338172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: specified TLBI op requires a register
338272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi VALE3
338372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
338472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: specified TLBI op does not use a register
338572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi VMALLS12E1, x15
338672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                          ^
338772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: specified TLBI op requires a register
338872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi VAALE1
338972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
339072062f5744557e270a38192554c3126ea5f97434Tim Northover
339172062f5744557e270a38192554c3126ea5f97434Tim Northover// For the MSR/MRS instructions, first make sure read-only and
339272062f5744557e270a38192554c3126ea5f97434Tim Northover// write-only registers actually are.
339372062f5744557e270a38192554c3126ea5f97434Tim Northover        msr MDCCSR_EL0, x12
339472062f5744557e270a38192554c3126ea5f97434Tim Northover        msr DBGDTRRX_EL0, x12
339572062f5744557e270a38192554c3126ea5f97434Tim Northover        msr MDRAR_EL1, x12
339672062f5744557e270a38192554c3126ea5f97434Tim Northover        msr OSLSR_EL1, x12
339772062f5744557e270a38192554c3126ea5f97434Tim Northover        msr DBGAUTHSTATUS_EL1, x12
339872062f5744557e270a38192554c3126ea5f97434Tim Northover        msr MIDR_EL1, x12
339972062f5744557e270a38192554c3126ea5f97434Tim Northover        msr CCSIDR_EL1, x12
340072062f5744557e270a38192554c3126ea5f97434Tim Northover        msr CLIDR_EL1, x12
340172062f5744557e270a38192554c3126ea5f97434Tim Northover        msr CTR_EL0, x12
340272062f5744557e270a38192554c3126ea5f97434Tim Northover        msr MPIDR_EL1, x12
340372062f5744557e270a38192554c3126ea5f97434Tim Northover        msr REVIDR_EL1, x12
340472062f5744557e270a38192554c3126ea5f97434Tim Northover        msr AIDR_EL1, x12
340572062f5744557e270a38192554c3126ea5f97434Tim Northover        msr DCZID_EL0, x12
340672062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ID_PFR0_EL1, x12
340772062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ID_PFR1_EL1, x12
340872062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ID_DFR0_EL1, x12
340972062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ID_AFR0_EL1, x12
341072062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ID_MMFR0_EL1, x12
341172062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ID_MMFR1_EL1, x12
341272062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ID_MMFR2_EL1, x12
341372062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ID_MMFR3_EL1, x12
341472062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ID_ISAR0_EL1, x12
341572062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ID_ISAR1_EL1, x12
341672062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ID_ISAR2_EL1, x12
341772062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ID_ISAR3_EL1, x12
341872062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ID_ISAR4_EL1, x12
341972062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ID_ISAR5_EL1, x12
342072062f5744557e270a38192554c3126ea5f97434Tim Northover        msr MVFR0_EL1, x12
342172062f5744557e270a38192554c3126ea5f97434Tim Northover        msr MVFR1_EL1, x12
342272062f5744557e270a38192554c3126ea5f97434Tim Northover        msr MVFR2_EL1, x12
342372062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ID_AA64PFR0_EL1, x12
342472062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ID_AA64PFR1_EL1, x12
342572062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ID_AA64DFR0_EL1, x12
342672062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ID_AA64DFR1_EL1, x12
342772062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ID_AA64AFR0_EL1, x12
342872062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ID_AA64AFR1_EL1, x12
342972062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ID_AA64ISAR0_EL1, x12
343072062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ID_AA64ISAR1_EL1, x12
343172062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ID_AA64MMFR0_EL1, x12
343272062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ID_AA64MMFR1_EL1, x12
343372062f5744557e270a38192554c3126ea5f97434Tim Northover        msr PMCEID0_EL0, x12
343472062f5744557e270a38192554c3126ea5f97434Tim Northover        msr PMCEID1_EL0, x12
343572062f5744557e270a38192554c3126ea5f97434Tim Northover        msr RVBAR_EL1, x12
343672062f5744557e270a38192554c3126ea5f97434Tim Northover        msr RVBAR_EL2, x12
343772062f5744557e270a38192554c3126ea5f97434Tim Northover        msr RVBAR_EL3, x12
343872062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ISR_EL1, x12
343972062f5744557e270a38192554c3126ea5f97434Tim Northover        msr CNTPCT_EL0, x12
344072062f5744557e270a38192554c3126ea5f97434Tim Northover        msr CNTVCT_EL0, x12
344172062f5744557e270a38192554c3126ea5f97434Tim Northover        msr PMEVCNTR31_EL0, x12
344272062f5744557e270a38192554c3126ea5f97434Tim Northover        msr PMEVTYPER31_EL0, x12
3443b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected writable system register or pstate
344472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr MDCCSR_EL0, x12
344572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3446b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
344772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr DBGDTRRX_EL0, x12
344872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3449b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
345072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr MDRAR_EL1, x12
345172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3452b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
345372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr OSLSR_EL1, x12
345472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3455b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
345672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr DBGAUTHSTATUS_EL1, x12
345772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3458b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
345972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr MIDR_EL1, x12
346072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3461b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
346272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr CCSIDR_EL1, x12
346372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3464b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
346572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr CLIDR_EL1, x12
346672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3467b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
346872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr CTR_EL0, x12
346972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3470b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
347172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr MPIDR_EL1, x12
347272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3473b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
347472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr REVIDR_EL1, x12
347572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3476b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
347772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr AIDR_EL1, x12
347872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3479b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
348072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr DCZID_EL0, x12
348172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3482b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
348372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr ID_PFR0_EL1, x12
348472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3485b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
348672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr ID_PFR1_EL1, x12
348772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3488b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
348972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr ID_DFR0_EL1, x12
349072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3491b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
349272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr ID_AFR0_EL1, x12
349372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3494b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
349572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr ID_MMFR0_EL1, x12
349672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3497b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
349872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr ID_MMFR1_EL1, x12
349972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3500b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
350172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr ID_MMFR2_EL1, x12
350272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3503b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
350472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr ID_MMFR3_EL1, x12
350572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3506b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
350772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr ID_ISAR0_EL1, x12
350872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3509b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
351072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr ID_ISAR1_EL1, x12
351172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3512b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
351372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr ID_ISAR2_EL1, x12
351472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3515b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
351672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr ID_ISAR3_EL1, x12
351772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3518b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
351972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr ID_ISAR4_EL1, x12
352072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3521b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
352272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr ID_ISAR5_EL1, x12
352372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3524b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
352572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr MVFR0_EL1, x12
352672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3527b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
352872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr MVFR1_EL1, x12
352972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3530b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
353172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr MVFR2_EL1, x12
353272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3533b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
353472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr ID_AA64PFR0_EL1, x12
353572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3536b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
353772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr ID_AA64PFR1_EL1, x12
353872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3539b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
354072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr ID_AA64DFR0_EL1, x12
354172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3542b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
354372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr ID_AA64DFR1_EL1, x12
354472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3545b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
354672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr ID_AA64AFR0_EL1, x12
354772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3548b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
354972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr ID_AA64AFR1_EL1, x12
355072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3551b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
355272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr ID_AA64ISAR0_EL1, x12
355372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3554b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
355572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr ID_AA64ISAR1_EL1, x12
355672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3557b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
355872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr ID_AA64MMFR0_EL1, x12
355972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3560b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
356172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr ID_AA64MMFR1_EL1, x12
356272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3563b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
356472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr PMCEID0_EL0, x12
356572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3566b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
356772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr PMCEID1_EL0, x12
356872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3569b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
357072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr RVBAR_EL1, x12
357172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3572b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
357372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr RVBAR_EL2, x12
357472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3575b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
357672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr RVBAR_EL3, x12
357772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3578b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
357972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr ISR_EL1, x12
358072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3581b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
358272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr CNTPCT_EL0, x12
358372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3584b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
358572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr CNTVCT_EL0, x12
358672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3587b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
358872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr PMEVCNTR31_EL0, x12
358972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3590b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
359172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr PMEVTYPER31_EL0, x12
359272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
359372062f5744557e270a38192554c3126ea5f97434Tim Northover
359472062f5744557e270a38192554c3126ea5f97434Tim Northover        mrs x9, DBGDTRTX_EL0
359572062f5744557e270a38192554c3126ea5f97434Tim Northover        mrs x9, OSLAR_EL1
359672062f5744557e270a38192554c3126ea5f97434Tim Northover        mrs x9, PMSWINC_EL0
359772062f5744557e270a38192554c3126ea5f97434Tim Northover        mrs x9, PMEVCNTR31_EL0
359872062f5744557e270a38192554c3126ea5f97434Tim Northover        mrs x9, PMEVTYPER31_EL0
3599b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected readable system register
360072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         mrs x9, DBGDTRTX_EL0
360172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
3602b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected readable system register
360372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         mrs x9, OSLAR_EL1
360472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
3605b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected readable system register
360672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         mrs x9, PMSWINC_EL0
360772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
3608b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected readable system register
360972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         mrs x9, PMEVCNTR31_EL0
361072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
3611b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected readable system register
361272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         mrs x9, PMEVTYPER31_EL0
361372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
361472062f5744557e270a38192554c3126ea5f97434Tim Northover
361572062f5744557e270a38192554c3126ea5f97434Tim Northover// Now check some invalid generic names
361672062f5744557e270a38192554c3126ea5f97434Tim Northover        mrs xzr, s2_5_c11_c13_2
361772062f5744557e270a38192554c3126ea5f97434Tim Northover        mrs x12, s3_8_c11_c13_2
361872062f5744557e270a38192554c3126ea5f97434Tim Northover        mrs x13, s3_3_c12_c13_2
361972062f5744557e270a38192554c3126ea5f97434Tim Northover        mrs x19, s3_2_c15_c16_2
362072062f5744557e270a38192554c3126ea5f97434Tim Northover        mrs x30, s3_2_c15_c1_8
3621b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected readable system register
362272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         mrs xzr, s2_5_c11_c13_2
362372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
3624b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected readable system register
362572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         mrs x12, s3_8_c11_c13_2
362672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
3627b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected readable system register
362872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         mrs x13, s3_3_c12_c13_2
362972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
3630b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected readable system register
363172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         mrs x19, s3_2_c15_c16_2
363272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
3633b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected readable system register
363472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         mrs x30, s3_2_c15_c1_8
363572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
363672062f5744557e270a38192554c3126ea5f97434Tim Northover
363772062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
363872062f5744557e270a38192554c3126ea5f97434Tim Northover// Test and branch (immediate)
363972062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
364072062f5744557e270a38192554c3126ea5f97434Tim Northover
364172062f5744557e270a38192554c3126ea5f97434Tim Northover        tbz w3, #-1, addr
364272062f5744557e270a38192554c3126ea5f97434Tim Northover        tbz w3, #32, nowhere
364372062f5744557e270a38192554c3126ea5f97434Tim Northover        tbz x9, #-1, there
364472062f5744557e270a38192554c3126ea5f97434Tim Northover        tbz x20, #64, dont
3645b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected integer in range [0, 31]
364672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:     tbz w3, #-1, addr
364772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3648b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 31]
364972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        tbz w3, #32, nowhere
365072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                ^
3651b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 63]
365272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        tbz x9, #-1, there
365372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                ^
3654b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 63]
365572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        tbz x20, #64, dont
365672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
365772062f5744557e270a38192554c3126ea5f97434Tim Northover
365872062f5744557e270a38192554c3126ea5f97434Tim Northover        tbnz w3, #-1, addr
365972062f5744557e270a38192554c3126ea5f97434Tim Northover        tbnz w3, #32, nowhere
366072062f5744557e270a38192554c3126ea5f97434Tim Northover        tbnz x9, #-1, there
366172062f5744557e270a38192554c3126ea5f97434Tim Northover        tbnz x20, #64, dont
3662b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 31]
366372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        tbnz w3, #-1, addr
366472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
3665b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 31]
366672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        tbnz w3, #32, nowhere
366772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
3668b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 63]
366972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        tbnz x9, #-1, there
367072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
3671b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected integer in range [0, 63]
367272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        tbnz x20, #64, dont
367372062f5744557e270a38192554c3126ea5f97434Tim Northover
367472062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
367572062f5744557e270a38192554c3126ea5f97434Tim Northover// Unconditional branch (immediate)
367672062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
367772062f5744557e270a38192554c3126ea5f97434Tim Northover
367872062f5744557e270a38192554c3126ea5f97434Tim Northover        b #134217728
367972062f5744557e270a38192554c3126ea5f97434Tim Northover        b #-134217732
368072062f5744557e270a38192554c3126ea5f97434Tim Northover        b #1
3681b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected label or encodable integer pc offset
368272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         b #134217728
368372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:           ^
3684b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected label or encodable integer pc offset
368572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         b #-134217732
368672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:           ^
3687b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected label or encodable integer pc offset
368872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         b #1
368972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:           ^
369072062f5744557e270a38192554c3126ea5f97434Tim Northover
369172062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
369272062f5744557e270a38192554c3126ea5f97434Tim Northover// Unconditional branch (register)
369372062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
369472062f5744557e270a38192554c3126ea5f97434Tim Northover
369572062f5744557e270a38192554c3126ea5f97434Tim Northover        br w2
369672062f5744557e270a38192554c3126ea5f97434Tim Northover        br sp
369772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
369872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         br w2
369972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:            ^
370072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
370172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         br sp
370272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:            ^
370372062f5744557e270a38192554c3126ea5f97434Tim Northover
370472062f5744557e270a38192554c3126ea5f97434Tim Northover        //// These ones shouldn't allow any registers
370572062f5744557e270a38192554c3126ea5f97434Tim Northover        eret x2
370672062f5744557e270a38192554c3126ea5f97434Tim Northover        drps x2
370772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
370872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         eret x2
370972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
371072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
371172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         drps x2
371272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
371372062f5744557e270a38192554c3126ea5f97434Tim Northover
3714