187773c318fcee853fb34a80a10c4347d523bdafbTim Northover// RUN: not llvm-mc -triple aarch64-none-linux-gnu < %s 2> %t
2dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// RUN: FileCheck --check-prefix=CHECK-ERROR --check-prefix=CHECK-ERROR-ARM64 < %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
78cddc3e03e4ec99c0268c03a126195173e519ed58Pirama Arumuga Nainar// Out of range immediates: more than 12 bits
79cddc3e03e4ec99c0268c03a126195173e519ed58Pirama Arumuga Nainar        add w4, w5, #-4096
8072062f5744557e270a38192554c3126ea5f97434Tim Northover        add w5, w6, #0x1000
81cddc3e03e4ec99c0268c03a126195173e519ed58Pirama Arumuga Nainar        add w4, w5, #-4096, 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]
84cddc3e03e4ec99c0268c03a126195173e519ed58Pirama Arumuga Nainar// CHECK-ERROR-NEXT:         add w4, w5, #-4096
8572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
86dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT: error: expected compatible register, symbol or integer in range [0, 4095]
87dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT:         add w5, w6, #0x1000
88dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT:                     ^
89b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected compatible register, symbol or integer in range [0, 4095]
90cddc3e03e4ec99c0268c03a126195173e519ed58Pirama Arumuga Nainar// CHECK-ERROR-NEXT:         add w4, w5, #-4096, 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
144dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64: error: expected compatible register, symbol or integer in range [0, 4095]
145dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT:         adds w0, w5, #0x10000
146dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-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//------------------------------------------------------------------------------
732c6a4f5e819217e1e12c458aed8e7b122e23a3a58Stephen Hines// Logical (immediates)
733c6a4f5e819217e1e12c458aed8e7b122e23a3a58Stephen Hines//------------------------------------------------------------------------------
734c6a4f5e819217e1e12c458aed8e7b122e23a3a58Stephen Hines
735c6a4f5e819217e1e12c458aed8e7b122e23a3a58Stephen Hines        and w2, w3, #4294967296
736c6a4f5e819217e1e12c458aed8e7b122e23a3a58Stephen Hines        eor w2, w3, #4294967296
737c6a4f5e819217e1e12c458aed8e7b122e23a3a58Stephen Hines        orr w2, w3, #4294967296
738c6a4f5e819217e1e12c458aed8e7b122e23a3a58Stephen Hines        ands w2, w3, #4294967296
739c6a4f5e819217e1e12c458aed8e7b122e23a3a58Stephen Hines// CHECK-ERROR: error: expected compatible register or logical immediate
740c6a4f5e819217e1e12c458aed8e7b122e23a3a58Stephen Hines// CHECK-ERROR-NEXT:         and w2, w3, #4294967296
741c6a4f5e819217e1e12c458aed8e7b122e23a3a58Stephen Hines// CHECK-ERROR-NEXT:                     ^
742c6a4f5e819217e1e12c458aed8e7b122e23a3a58Stephen Hines// CHECK-ERROR-NEXT: error: expected compatible register or logical immediate
743c6a4f5e819217e1e12c458aed8e7b122e23a3a58Stephen Hines// CHECK-ERROR-NEXT:         eor w2, w3, #4294967296
744c6a4f5e819217e1e12c458aed8e7b122e23a3a58Stephen Hines// CHECK-ERROR-NEXT:                     ^
745c6a4f5e819217e1e12c458aed8e7b122e23a3a58Stephen Hines// CHECK-ERROR-NEXT: error: expected compatible register or logical immediate
746c6a4f5e819217e1e12c458aed8e7b122e23a3a58Stephen Hines// CHECK-ERROR-NEXT:         orr w2, w3, #4294967296
747c6a4f5e819217e1e12c458aed8e7b122e23a3a58Stephen Hines// CHECK-ERROR-NEXT:                     ^
748c6a4f5e819217e1e12c458aed8e7b122e23a3a58Stephen Hines// CHECK-ERROR-NEXT: error: expected compatible register or logical immediate
749c6a4f5e819217e1e12c458aed8e7b122e23a3a58Stephen Hines// CHECK-ERROR-NEXT:         ands w2, w3, #4294967296
750c6a4f5e819217e1e12c458aed8e7b122e23a3a58Stephen Hines// CHECK-ERROR-NEXT:                      ^
751c6a4f5e819217e1e12c458aed8e7b122e23a3a58Stephen Hines
752c6a4f5e819217e1e12c458aed8e7b122e23a3a58Stephen Hines//------------------------------------------------------------------------------
75372062f5744557e270a38192554c3126ea5f97434Tim Northover// Bitfield
75472062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
75572062f5744557e270a38192554c3126ea5f97434Tim Northover
75672062f5744557e270a38192554c3126ea5f97434Tim Northover        sbfm x3, w13, #0, #0
75772062f5744557e270a38192554c3126ea5f97434Tim Northover        sbfm w12, x9, #0, #0
75872062f5744557e270a38192554c3126ea5f97434Tim Northover        sbfm sp, x3, #3, #5
75972062f5744557e270a38192554c3126ea5f97434Tim Northover        sbfm w3, wsp, #1, #9
76072062f5744557e270a38192554c3126ea5f97434Tim Northover        sbfm x9, x5, #-1, #0
76172062f5744557e270a38192554c3126ea5f97434Tim Northover        sbfm x9, x5, #0, #-1
76272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
76372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbfm x3, w13, #0, #0
76472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
76572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
76672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbfm w12, x9, #0, #0
76772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
76872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
76972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbfm sp, x3, #3, #5
77072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
77172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
77272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbfm w3, wsp, #1, #9
77372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
774dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 63]
77572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbfm x9, x5, #-1, #0
77672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
777dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 63]
77872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbfm x9, x5, #0, #-1
77972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                          ^
78072062f5744557e270a38192554c3126ea5f97434Tim Northover
78172062f5744557e270a38192554c3126ea5f97434Tim Northover        sbfm w3, w5, #32, #1
78272062f5744557e270a38192554c3126ea5f97434Tim Northover        sbfm w7, w11, #19, #32
78372062f5744557e270a38192554c3126ea5f97434Tim Northover        sbfm x29, x30, #64, #0
78472062f5744557e270a38192554c3126ea5f97434Tim Northover        sbfm x10, x20, #63, #64
785dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR: error: {{expected|immediate must be an}} integer in range [0, 31]
78672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbfm w3, w5, #32, #1
78772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
788dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
78972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbfm w7, w11, #19, #32
79072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                            ^
791dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 63]
79272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbfm x29, x30, #64, #0
79372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
794dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 63]
79572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbfm x10, x20, #63, #64
79672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                             ^
79772062f5744557e270a38192554c3126ea5f97434Tim Northover
79872062f5744557e270a38192554c3126ea5f97434Tim Northover        ubfm w3, w5, #32, #1
79972062f5744557e270a38192554c3126ea5f97434Tim Northover        ubfm w7, w11, #19, #32
80072062f5744557e270a38192554c3126ea5f97434Tim Northover        ubfm x29, x30, #64, #0
80172062f5744557e270a38192554c3126ea5f97434Tim Northover        ubfm x10, x20, #63, #64
802dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR: error: {{expected|immediate must be an}} integer in range [0, 31]
80372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ubfm w3, w5, #32, #1
80472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
805dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
80672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ubfm w7, w11, #19, #32
80772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                            ^
808dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 63]
80972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ubfm x29, x30, #64, #0
81072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
811dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 63]
81272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ubfm x10, x20, #63, #64
81372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                             ^
81472062f5744557e270a38192554c3126ea5f97434Tim Northover
81572062f5744557e270a38192554c3126ea5f97434Tim Northover        bfm w3, w5, #32, #1
81672062f5744557e270a38192554c3126ea5f97434Tim Northover        bfm w7, w11, #19, #32
81772062f5744557e270a38192554c3126ea5f97434Tim Northover        bfm x29, x30, #64, #0
81872062f5744557e270a38192554c3126ea5f97434Tim Northover        bfm x10, x20, #63, #64
819dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR: error: {{expected|immediate must be an}} integer in range [0, 31]
82072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         bfm w3, w5, #32, #1
82172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
822dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
82372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         bfm w7, w11, #19, #32
82472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                            ^
825dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 63]
82672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         bfm x29, x30, #64, #0
82772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
828dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 63]
82972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         bfm x10, x20, #63, #64
83072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                             ^
83172062f5744557e270a38192554c3126ea5f97434Tim Northover
83272062f5744557e270a38192554c3126ea5f97434Tim Northover        sxtb x3, x2
83372062f5744557e270a38192554c3126ea5f97434Tim Northover        sxth xzr, xzr
83472062f5744557e270a38192554c3126ea5f97434Tim Northover        sxtw x3, x5
835dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64: error: invalid operand for instruction
836dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT:         sxtb x3, x2
837dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT:                  ^
838dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT: error: invalid operand for instruction
839dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT:         sxth xzr, xzr
840dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT:                   ^
841dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT: error: invalid operand for instruction
842dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT:         sxtw x3, x5
843dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT:                  ^
84472062f5744557e270a38192554c3126ea5f97434Tim Northover
84572062f5744557e270a38192554c3126ea5f97434Tim Northover        uxtb x3, x12
84672062f5744557e270a38192554c3126ea5f97434Tim Northover        uxth x5, x9
84772062f5744557e270a38192554c3126ea5f97434Tim Northover        uxtw x3, x5
84872062f5744557e270a38192554c3126ea5f97434Tim Northover        uxtb x2, sp
84972062f5744557e270a38192554c3126ea5f97434Tim Northover        uxtb sp, xzr
85072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
85172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         uxtb x3, x12
85272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
85372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
85472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         uxth x5, x9
85572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
856dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT: error: invalid instruction
857dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT:         uxtw x3, x5
858dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT:         ^
85972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
86072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         uxtb x2, sp
86172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
86272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
86372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         uxtb sp, xzr
86472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
86572062f5744557e270a38192554c3126ea5f97434Tim Northover
86672062f5744557e270a38192554c3126ea5f97434Tim Northover        asr x3, w2, #1
86772062f5744557e270a38192554c3126ea5f97434Tim Northover        asr sp, x2, #1
86872062f5744557e270a38192554c3126ea5f97434Tim Northover        asr x25, x26, #-1
86972062f5744557e270a38192554c3126ea5f97434Tim Northover        asr x25, x26, #64
87072062f5744557e270a38192554c3126ea5f97434Tim Northover        asr w9, w8, #32
87172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
87272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         asr x3, w2, #1
87372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
87472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
87572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         asr sp, x2, #1
87672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
877dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 63]
87872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         asr x25, x26, #-1
87972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
880dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 63]
88172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         asr x25, x26, #64
88272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
883dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
88472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         asr w9, w8, #32
88572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
88672062f5744557e270a38192554c3126ea5f97434Tim Northover
88772062f5744557e270a38192554c3126ea5f97434Tim Northover        sbfiz w1, w2, #0, #0
88872062f5744557e270a38192554c3126ea5f97434Tim Northover        sbfiz wsp, w9, #0, #1
88972062f5744557e270a38192554c3126ea5f97434Tim Northover        sbfiz w9, w10, #32, #1
89072062f5744557e270a38192554c3126ea5f97434Tim Northover        sbfiz w11, w12, #32, #0
89172062f5744557e270a38192554c3126ea5f97434Tim Northover        sbfiz w9, w10, #10, #23
89272062f5744557e270a38192554c3126ea5f97434Tim Northover        sbfiz x3, x5, #12, #53
893dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines        sbfiz sp, x3, #7, #6
894dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines        sbfiz w3, wsp, #10, #8
895dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64: error: expected integer in range [<lsb>, 31]
896dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-ARM64: error: expected integer in range [1, 32]
89772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbfiz w1, w2, #0, #0
89872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
89972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
90072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbfiz wsp, w9, #0, #1
90172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:               ^
902dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
90372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbfiz w9, w10, #32, #1
90472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
905dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
90672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbfiz w11, w12, #32, #0
90772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
90872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: requested insert overflows register
90972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbfiz w9, w10, #10, #23
91072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                             ^
91172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: requested insert overflows register
91272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbfiz x3, x5, #12, #53
91372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                            ^
91472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
915dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT:         sbfiz sp, x3, #7, #6
91672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:               ^
91772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
918dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT:         sbfiz w3, wsp, #10, #8
91972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
92072062f5744557e270a38192554c3126ea5f97434Tim Northover
92172062f5744557e270a38192554c3126ea5f97434Tim Northover        sbfx w1, w2, #0, #0
92272062f5744557e270a38192554c3126ea5f97434Tim Northover        sbfx wsp, w9, #0, #1
92372062f5744557e270a38192554c3126ea5f97434Tim Northover        sbfx w9, w10, #32, #1
92472062f5744557e270a38192554c3126ea5f97434Tim Northover        sbfx w11, w12, #32, #0
92572062f5744557e270a38192554c3126ea5f97434Tim Northover        sbfx w9, w10, #10, #23
92672062f5744557e270a38192554c3126ea5f97434Tim Northover        sbfx x3, x5, #12, #53
927dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines        sbfx sp, x3, #7, #6
928dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines        sbfx w3, wsp, #10, #8
929dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64: error: expected integer in range [<lsb>, 31]
930dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-ARM64: error: expected integer in range [1, 32]
93172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbfx w1, w2, #0, #0
93272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                          ^
93372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
93472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbfx wsp, w9, #0, #1
93572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
936dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
93772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbfx w9, w10, #32, #1
93872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
939dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
94072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbfx w11, w12, #32, #0
94172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
94272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: requested extract overflows register
94372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbfx w9, w10, #10, #23
94472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                            ^
94572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: requested extract overflows register
94672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sbfx x3, x5, #12, #53
94772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
94872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
949dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT:         sbfx sp, x3, #7, #6
95072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
95172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
952dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT:         sbfx w3, wsp, #10, #8
95372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
95472062f5744557e270a38192554c3126ea5f97434Tim Northover
95572062f5744557e270a38192554c3126ea5f97434Tim Northover        bfi w1, w2, #0, #0
95672062f5744557e270a38192554c3126ea5f97434Tim Northover        bfi wsp, w9, #0, #1
95772062f5744557e270a38192554c3126ea5f97434Tim Northover        bfi w9, w10, #32, #1
95872062f5744557e270a38192554c3126ea5f97434Tim Northover        bfi w11, w12, #32, #0
95972062f5744557e270a38192554c3126ea5f97434Tim Northover        bfi w9, w10, #10, #23
96072062f5744557e270a38192554c3126ea5f97434Tim Northover        bfi x3, x5, #12, #53
961dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines        bfi sp, x3, #7, #6
962dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines        bfi w3, wsp, #10, #8
963dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64: error: expected integer in range [<lsb>, 31]
964dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-ARM64: error: expected integer in range [1, 32]
96572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         bfi w1, w2, #0, #0
96672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
96772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
96872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         bfi wsp, w9, #0, #1
96972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
970dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
97172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         bfi w9, w10, #32, #1
97272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
973dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
97472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         bfi w11, w12, #32, #0
97572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
97672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: requested insert overflows register
97772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         bfi w9, w10, #10, #23
97872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
97972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: requested insert overflows register
98072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         bfi x3, x5, #12, #53
98172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                          ^
98272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
983dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT:         bfi sp, x3, #7, #6
98472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
98572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
986dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT:         bfi w3, wsp, #10, #8
98772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
98872062f5744557e270a38192554c3126ea5f97434Tim Northover
98972062f5744557e270a38192554c3126ea5f97434Tim Northover        bfxil w1, w2, #0, #0
99072062f5744557e270a38192554c3126ea5f97434Tim Northover        bfxil wsp, w9, #0, #1
99172062f5744557e270a38192554c3126ea5f97434Tim Northover        bfxil w9, w10, #32, #1
99272062f5744557e270a38192554c3126ea5f97434Tim Northover        bfxil w11, w12, #32, #0
99372062f5744557e270a38192554c3126ea5f97434Tim Northover        bfxil w9, w10, #10, #23
99472062f5744557e270a38192554c3126ea5f97434Tim Northover        bfxil x3, x5, #12, #53
995dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines        bfxil sp, x3, #7, #6
996dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines        bfxil w3, wsp, #10, #8
997dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64: error: expected integer in range [<lsb>, 31]
998dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-ARM64: error: expected integer in range [1, 32]
99972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         bfxil w1, w2, #0, #0
100072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
100172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
100272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         bfxil wsp, w9, #0, #1
100372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:               ^
1004dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
100572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         bfxil w9, w10, #32, #1
100672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
1007dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
100872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         bfxil w11, w12, #32, #0
100972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
101072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: requested extract overflows register
101172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         bfxil w9, w10, #10, #23
101272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                             ^
101372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: requested extract overflows register
101472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         bfxil x3, x5, #12, #53
101572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                            ^
101672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
1017dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT:         bfxil sp, x3, #7, #6
101872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:               ^
101972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
1020dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT:         bfxil w3, wsp, #10, #8
102172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
102272062f5744557e270a38192554c3126ea5f97434Tim Northover
102372062f5744557e270a38192554c3126ea5f97434Tim Northover        ubfiz w1, w2, #0, #0
102472062f5744557e270a38192554c3126ea5f97434Tim Northover        ubfiz wsp, w9, #0, #1
102572062f5744557e270a38192554c3126ea5f97434Tim Northover        ubfiz w9, w10, #32, #1
102672062f5744557e270a38192554c3126ea5f97434Tim Northover        ubfiz w11, w12, #32, #0
102772062f5744557e270a38192554c3126ea5f97434Tim Northover        ubfiz w9, w10, #10, #23
102872062f5744557e270a38192554c3126ea5f97434Tim Northover        ubfiz x3, x5, #12, #53
1029dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines        ubfiz sp, x3, #7, #6
1030dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines        ubfiz w3, wsp, #10, #8
1031dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64: error: expected integer in range [<lsb>, 31]
1032dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-ARM64: error: expected integer in range [1, 32]
103372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ubfiz w1, w2, #0, #0
103472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
103572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
103672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ubfiz wsp, w9, #0, #1
103772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:               ^
1038dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
103972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ubfiz w9, w10, #32, #1
104072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
1041dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
104272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ubfiz w11, w12, #32, #0
104372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
104472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: requested insert overflows register
104572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ubfiz w9, w10, #10, #23
104672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                             ^
104772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: requested insert overflows register
104872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ubfiz x3, x5, #12, #53
104972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                            ^
105072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
1051dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT:         ubfiz sp, x3, #7, #6
105272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:               ^
105372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
1054dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT:         ubfiz w3, wsp, #10, #8
105572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
105672062f5744557e270a38192554c3126ea5f97434Tim Northover
105772062f5744557e270a38192554c3126ea5f97434Tim Northover        ubfx w1, w2, #0, #0
105872062f5744557e270a38192554c3126ea5f97434Tim Northover        ubfx wsp, w9, #0, #1
105972062f5744557e270a38192554c3126ea5f97434Tim Northover        ubfx w9, w10, #32, #1
106072062f5744557e270a38192554c3126ea5f97434Tim Northover        ubfx w11, w12, #32, #0
106172062f5744557e270a38192554c3126ea5f97434Tim Northover        ubfx w9, w10, #10, #23
106272062f5744557e270a38192554c3126ea5f97434Tim Northover        ubfx x3, x5, #12, #53
1063dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines        ubfx sp, x3, #7, #6
1064dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines        ubfx w3, wsp, #10, #8
1065dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64: error: expected integer in range [<lsb>, 31]
1066dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-ARM64: error: expected integer in range [1, 32]
106772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ubfx w1, w2, #0, #0
106872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
106972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
107072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ubfx wsp, w9, #0, #1
107172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
1072dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
107372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ubfx w9, w10, #32, #1
107472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
1075dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
107672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ubfx w11, w12, #32, #0
107772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
107872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: requested extract overflows register
107972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ubfx w9, w10, #10, #23
108072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                            ^
108172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: requested extract overflows register
108272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ubfx x3, x5, #12, #53
108372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
108472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
1085dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT:         ubfx sp, x3, #7, #6
108672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
108772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
1088dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT:         ubfx w3, wsp, #10, #8
108972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
109072062f5744557e270a38192554c3126ea5f97434Tim Northover
10916948897e478cbd66626159776a8017b3c18579b9Pirama Arumuga Nainar        bfc wsp, #3, #6
10926948897e478cbd66626159776a8017b3c18579b9Pirama Arumuga Nainar        bfc w4, #2, #31
10936948897e478cbd66626159776a8017b3c18579b9Pirama Arumuga Nainar        bfc sp, #0, #1
10946948897e478cbd66626159776a8017b3c18579b9Pirama Arumuga Nainar        bfc x6, #0, #0
10956948897e478cbd66626159776a8017b3c18579b9Pirama Arumuga Nainar// CHECK-ERROR: error: invalid operand for instruction
10966948897e478cbd66626159776a8017b3c18579b9Pirama Arumuga Nainar// CHECK-ERROR-NEXT:        bfc wsp, #3, #6
10976948897e478cbd66626159776a8017b3c18579b9Pirama Arumuga Nainar// CHECK-ERROR-NEXT:            ^
10986948897e478cbd66626159776a8017b3c18579b9Pirama Arumuga Nainar// CHECK-ERROR-NEXT: error: requested insert overflows register
10996948897e478cbd66626159776a8017b3c18579b9Pirama Arumuga Nainar// CHECK-ERROR-NEXT:         bfc w4, #2, #31
11006948897e478cbd66626159776a8017b3c18579b9Pirama Arumuga Nainar// CHECK-ERROR-NEXT:                     ^
11016948897e478cbd66626159776a8017b3c18579b9Pirama Arumuga Nainar// CHECK-ERROR-NEXT: error: invalid operand for instruction
11026948897e478cbd66626159776a8017b3c18579b9Pirama Arumuga Nainar// CHECK-ERROR-NEXT:         bfc sp, #0, #1
11036948897e478cbd66626159776a8017b3c18579b9Pirama Arumuga Nainar// CHECK-ERROR-NEXT:             ^
11046948897e478cbd66626159776a8017b3c18579b9Pirama Arumuga Nainar// CHECK-ERROR-NEXT: error: expected integer in range [1, 32]
11056948897e478cbd66626159776a8017b3c18579b9Pirama Arumuga Nainar// CHECK-ERROR-NEXT:         bfc x6, #0, #0
11066948897e478cbd66626159776a8017b3c18579b9Pirama Arumuga Nainar// CHECK-ERROR-NEXT:                     ^
11076948897e478cbd66626159776a8017b3c18579b9Pirama Arumuga Nainar
110872062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
110972062f5744557e270a38192554c3126ea5f97434Tim Northover// Compare & branch (immediate)
111072062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
111172062f5744557e270a38192554c3126ea5f97434Tim Northover
111272062f5744557e270a38192554c3126ea5f97434Tim Northover        cbnz wsp, lbl
111372062f5744557e270a38192554c3126ea5f97434Tim Northover        cbz  sp, lbl
111472062f5744557e270a38192554c3126ea5f97434Tim Northover        cbz  x3, x5
111572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
111672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:           cbnz wsp, lbl
111772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                ^
111872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
111972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:           cbz sp, lbl
112072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:               ^
1121b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected label or encodable integer pc offset
112272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:           cbz x3, x5
112372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
112472062f5744557e270a38192554c3126ea5f97434Tim Northover
112572062f5744557e270a38192554c3126ea5f97434Tim Northover        cbz w20, #1048576
112672062f5744557e270a38192554c3126ea5f97434Tim Northover        cbnz xzr, #-1048580
112772062f5744557e270a38192554c3126ea5f97434Tim Northover        cbz x29, #1
1128b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected label or encodable integer pc offset
112972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:           cbz w20, #1048576
113072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
1131b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected label or encodable integer pc offset
113272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:           cbnz xzr, #-1048580
113372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                    ^
1134b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected label or encodable integer pc offset
113572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:           cbz x29, #1
113672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                    ^
113772062f5744557e270a38192554c3126ea5f97434Tim Northover
113872062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
113972062f5744557e270a38192554c3126ea5f97434Tim Northover// Conditional branch (immediate)
114072062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
114172062f5744557e270a38192554c3126ea5f97434Tim Northover
114272062f5744557e270a38192554c3126ea5f97434Tim Northover        b.zf lbl
114372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid condition code
114472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:           b.zf lbl
114572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
114672062f5744557e270a38192554c3126ea5f97434Tim Northover
114772062f5744557e270a38192554c3126ea5f97434Tim Northover        b.eq #1048576
114872062f5744557e270a38192554c3126ea5f97434Tim Northover        b.ge #-1048580
114972062f5744557e270a38192554c3126ea5f97434Tim Northover        b.cc #1
1150b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected label or encodable integer pc offset
115172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:           b.eq #1048576
115272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                ^
1153b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected label or encodable integer pc offset
115472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:           b.ge #-1048580
115572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                ^
1156b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected label or encodable integer pc offset
115772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:           b.cc #1
115872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                ^
115972062f5744557e270a38192554c3126ea5f97434Tim Northover
116072062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
116172062f5744557e270a38192554c3126ea5f97434Tim Northover// Conditional compare (immediate)
116272062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
116372062f5744557e270a38192554c3126ea5f97434Tim Northover
116472062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmp wsp, #4, #2, ne
116572062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmp w25, #-1, #15, hs
116672062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmp w3, #32, #0, ge
116772062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmp w19, #5, #-1, lt
116872062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmp w20, #7, #16, hs
116972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
117072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmp wsp, #4, #2, ne
117172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
1172dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
117372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmp w25, #-1, #15, hs
117472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
1175dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
117672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmp w3, #32, #0, ge
117772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
1178dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
117972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmp w19, #5, #-1, lt
118072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
1181dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
118272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmp w20, #7, #16, hs
118372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
118472062f5744557e270a38192554c3126ea5f97434Tim Northover
118572062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmp sp, #4, #2, ne
118672062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmp x25, #-1, #15, hs
118772062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmp x3, #32, #0, ge
118872062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmp x19, #5, #-1, lt
118972062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmp x20, #7, #16, hs
119072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
119172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmp sp, #4, #2, ne
119272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
1193dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
119472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmp x25, #-1, #15, hs
119572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
1196dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
119772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmp x3, #32, #0, ge
119872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
1199dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
120072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmp x19, #5, #-1, lt
120172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
1202dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
120372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmp x20, #7, #16, hs
120472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
120572062f5744557e270a38192554c3126ea5f97434Tim Northover
120672062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmn wsp, #4, #2, ne
120772062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmn w25, #-1, #15, hs
120872062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmn w3, #32, #0, ge
120972062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmn w19, #5, #-1, lt
121072062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmn w20, #7, #16, hs
121172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
121272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmn wsp, #4, #2, ne
121372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
1214dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
121572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmn w25, #-1, #15, hs
121672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
1217dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
121872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmn w3, #32, #0, ge
121972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
1220dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
122172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmn w19, #5, #-1, lt
122272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
1223dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
122472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmn w20, #7, #16, hs
122572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
122672062f5744557e270a38192554c3126ea5f97434Tim Northover
122772062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmn sp, #4, #2, ne
122872062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmn x25, #-1, #15, hs
122972062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmn x3, #32, #0, ge
123072062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmn x19, #5, #-1, lt
123172062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmn x20, #7, #16, hs
123272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
123372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmn sp, #4, #2, ne
123472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
1235dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
123672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmn x25, #-1, #15, hs
123772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
1238dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
123972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmn x3, #32, #0, ge
124072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
1241dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
124272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmn x19, #5, #-1, lt
124372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
1244dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
124572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmn x20, #7, #16, hs
124672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
124772062f5744557e270a38192554c3126ea5f97434Tim Northover
124872062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
124972062f5744557e270a38192554c3126ea5f97434Tim Northover// Conditional compare (register)
125072062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
125172062f5744557e270a38192554c3126ea5f97434Tim Northover
125272062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmp wsp, w4, #2, ne
125372062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmp w3, wsp, #0, ge
125472062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmp w19, w5, #-1, lt
125572062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmp w20, w7, #16, hs
125672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
125772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmp wsp, w4, #2, ne
125872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
1259dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
126072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmp w3, wsp, #0, ge
126172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
1262dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
126372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmp w19, w5, #-1, lt
126472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
1265dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
126672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmp w20, w7, #16, hs
126772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
126872062f5744557e270a38192554c3126ea5f97434Tim Northover
126972062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmp sp, x4, #2, ne
127072062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmp x25, sp, #15, hs
127172062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmp x19, x5, #-1, lt
127272062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmp x20, x7, #16, hs
127372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
127472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmp sp, x4, #2, ne
127572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
1276dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
127772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmp x25, sp, #15, hs
127872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
1279dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
128072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmp x19, x5, #-1, lt
128172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
1282dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
128372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmp x20, x7, #16, hs
128472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
128572062f5744557e270a38192554c3126ea5f97434Tim Northover
128672062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmn wsp, w4, #2, ne
128772062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmn w25, wsp, #15, hs
128872062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmn w19, w5, #-1, lt
128972062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmn w20, w7, #16, hs
129072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
129172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmn wsp, w4, #2, ne
129272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
1293dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
129472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmn w25, wsp, #15, hs
129572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
1296dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
129772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmn w19, w5, #-1, lt
129872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
1299dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
130072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmn w20, w7, #16, hs
130172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
130272062f5744557e270a38192554c3126ea5f97434Tim Northover
130372062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmn sp, x4, #2, ne
130472062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmn x25, sp, #15, hs
130572062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmn x19, x5, #-1, lt
130672062f5744557e270a38192554c3126ea5f97434Tim Northover        ccmn x20, x7, #16, hs
130772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
130872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmn sp, x4, #2, ne
130972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
1310dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
131172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmn x25, sp, #15, hs
131272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
1313dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
131472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmn x19, x5, #-1, lt
131572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
1316dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
131772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ccmn x20, x7, #16, hs
131872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
131972062f5744557e270a38192554c3126ea5f97434Tim Northover
132072062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
132172062f5744557e270a38192554c3126ea5f97434Tim Northover// Conditional select
132272062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
132372062f5744557e270a38192554c3126ea5f97434Tim Northover
132472062f5744557e270a38192554c3126ea5f97434Tim Northover        csel w4, wsp, w9, eq
132572062f5744557e270a38192554c3126ea5f97434Tim Northover        csel wsp, w2, w3, ne
132672062f5744557e270a38192554c3126ea5f97434Tim Northover        csel w10, w11, wsp, ge
132772062f5744557e270a38192554c3126ea5f97434Tim Northover        csel w1, w2, w3, #3
132872062f5744557e270a38192554c3126ea5f97434Tim Northover        csel x4, sp, x9, eq
132972062f5744557e270a38192554c3126ea5f97434Tim Northover        csel sp, x2, x3, ne
133072062f5744557e270a38192554c3126ea5f97434Tim Northover        csel x10, x11, sp, ge
133172062f5744557e270a38192554c3126ea5f97434Tim Northover        csel x1, x2, x3, #3
133272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
133372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        csel w4, wsp, w9, eq
133472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
133572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
133672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        csel wsp, w2, w3, ne
133772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
133872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
133972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        csel w10, w11, wsp, ge
134072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
1341b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected AArch64 condition code
134272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        csel w1, w2, w3, #3
134372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
134472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
134572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        csel x4, sp, x9, eq
134672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
134772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
134872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        csel sp, x2, x3, ne
134972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
135072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
135172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        csel x10, x11, sp, ge
135272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
1353b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected AArch64 condition code
135472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        csel x1, x2, x3, #3
135572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
135672062f5744557e270a38192554c3126ea5f97434Tim Northover
135772062f5744557e270a38192554c3126ea5f97434Tim Northover        csinc w20, w21, wsp, mi
135872062f5744557e270a38192554c3126ea5f97434Tim Northover        csinc sp, x30, x29, eq
135972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
136072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        csinc w20, w21, wsp, mi
136172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
136272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
136372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        csinc sp, x30, x29, eq
136472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
136572062f5744557e270a38192554c3126ea5f97434Tim Northover
136672062f5744557e270a38192554c3126ea5f97434Tim Northover        csinv w20, wsp, wsp, mi
136772062f5744557e270a38192554c3126ea5f97434Tim Northover        csinv sp, x30, x29, le
136872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
136972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        csinv w20, wsp, wsp, mi
137072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
137172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
137272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        csinv sp, x30, x29, le
137372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
137472062f5744557e270a38192554c3126ea5f97434Tim Northover
137572062f5744557e270a38192554c3126ea5f97434Tim Northover        csneg w20, w21, wsp, mi
137672062f5744557e270a38192554c3126ea5f97434Tim Northover        csneg x0, sp, x29, le
137772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
137872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        csneg w20, w21, wsp, mi
137972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
138072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
138172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        csneg x0, sp, x29, le
138272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
138372062f5744557e270a38192554c3126ea5f97434Tim Northover
138472062f5744557e270a38192554c3126ea5f97434Tim Northover        cset wsp, lt
138572062f5744557e270a38192554c3126ea5f97434Tim Northover        csetm sp, ge
1386c6a4f5e819217e1e12c458aed8e7b122e23a3a58Stephen Hines        cset w1, al
1387c6a4f5e819217e1e12c458aed8e7b122e23a3a58Stephen Hines        csetm x6, nv
138872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
138972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        cset wsp, lt
139072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
139172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
139272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        csetm sp, ge
139372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
1394c6a4f5e819217e1e12c458aed8e7b122e23a3a58Stephen Hines// CHECK-ERROR-NEXT: error: condition codes AL and NV are invalid for this instruction
1395c6a4f5e819217e1e12c458aed8e7b122e23a3a58Stephen Hines// CHECK-ERROR-NEXT:        cset w1, al
1396c6a4f5e819217e1e12c458aed8e7b122e23a3a58Stephen Hines// CHECK-ERROR-NEXT:                   ^
1397c6a4f5e819217e1e12c458aed8e7b122e23a3a58Stephen Hines// CHECK-ERROR-NEXT: error: condition codes AL and NV are invalid for this instruction
1398c6a4f5e819217e1e12c458aed8e7b122e23a3a58Stephen Hines// CHECK-ERROR-NEXT:        csetm x6, nv
1399c6a4f5e819217e1e12c458aed8e7b122e23a3a58Stephen Hines// CHECK-ERROR-NEXT:                    ^
140072062f5744557e270a38192554c3126ea5f97434Tim Northover
140172062f5744557e270a38192554c3126ea5f97434Tim Northover        cinc w3, wsp, ne
140272062f5744557e270a38192554c3126ea5f97434Tim Northover        cinc sp, x9, eq
1403c6a4f5e819217e1e12c458aed8e7b122e23a3a58Stephen Hines        cinc x2, x0, nv
140472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
140572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        cinc w3, wsp, ne
140672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
140772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
140872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        cinc sp, x9, eq
140972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
1410c6a4f5e819217e1e12c458aed8e7b122e23a3a58Stephen Hines// CHECK-ERROR-NEXT: error: condition codes AL and NV are invalid for this instruction
1411c6a4f5e819217e1e12c458aed8e7b122e23a3a58Stephen Hines// CHECK-ERROR-NEXT:        cinc x2, x0, nv
1412c6a4f5e819217e1e12c458aed8e7b122e23a3a58Stephen Hines// CHECK-ERROR-NEXT:                       ^
141372062f5744557e270a38192554c3126ea5f97434Tim Northover
141472062f5744557e270a38192554c3126ea5f97434Tim Northover        cinv w3, wsp, ne
141572062f5744557e270a38192554c3126ea5f97434Tim Northover        cinv sp, x9, eq
1416c6a4f5e819217e1e12c458aed8e7b122e23a3a58Stephen Hines        cinv w8, x7, nv
141772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
141872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        cinv w3, wsp, ne
141972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
142072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
142172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        cinv sp, x9, eq
142272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
1423c6a4f5e819217e1e12c458aed8e7b122e23a3a58Stephen Hines// CHECK-ERROR-NEXT: error: condition codes AL and NV are invalid for this instruction
1424c6a4f5e819217e1e12c458aed8e7b122e23a3a58Stephen Hines// CHECK-ERROR-NEXT:        cinv w8, x7, nv
1425c6a4f5e819217e1e12c458aed8e7b122e23a3a58Stephen Hines// CHECK-ERROR-NEXT:                       ^
142672062f5744557e270a38192554c3126ea5f97434Tim Northover
142772062f5744557e270a38192554c3126ea5f97434Tim Northover        cneg w3, wsp, ne
142872062f5744557e270a38192554c3126ea5f97434Tim Northover        cneg sp, x9, eq
1429c6a4f5e819217e1e12c458aed8e7b122e23a3a58Stephen Hines        cneg x4, x5, al
143072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
143172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        cneg w3, wsp, ne
143272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
143372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
143472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        cneg sp, x9, eq
143572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
1436c6a4f5e819217e1e12c458aed8e7b122e23a3a58Stephen Hines// CHECK-ERROR-NEXT: error: condition codes AL and NV are invalid for this instruction
1437c6a4f5e819217e1e12c458aed8e7b122e23a3a58Stephen Hines// CHECK-ERROR-NEXT:        cneg x4, x5, al
1438c6a4f5e819217e1e12c458aed8e7b122e23a3a58Stephen Hines// CHECK-ERROR-NEXT:                       ^
143972062f5744557e270a38192554c3126ea5f97434Tim Northover
144072062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
144172062f5744557e270a38192554c3126ea5f97434Tim Northover// Data Processing (1 source)
144272062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
144372062f5744557e270a38192554c3126ea5f97434Tim Northover        rbit x23, w2
144472062f5744557e270a38192554c3126ea5f97434Tim Northover//CHECK-ERROR: error: invalid operand for instruction
144572062f5744557e270a38192554c3126ea5f97434Tim Northover//CHECK-ERROR-NEXT:     rbit x23, w2
144672062f5744557e270a38192554c3126ea5f97434Tim Northover
144772062f5744557e270a38192554c3126ea5f97434Tim Northover        cls sp, x2
144872062f5744557e270a38192554c3126ea5f97434Tim Northover//CHECK-ERROR: error: invalid operand for instruction
144972062f5744557e270a38192554c3126ea5f97434Tim Northover//CHECK-ERROR-NEXT:     cls sp, x2
145072062f5744557e270a38192554c3126ea5f97434Tim Northover
145172062f5744557e270a38192554c3126ea5f97434Tim Northover        clz wsp, w3
145272062f5744557e270a38192554c3126ea5f97434Tim Northover//CHECK-ERROR: error: invalid operand for instruction
145372062f5744557e270a38192554c3126ea5f97434Tim Northover//CHECK-ERROR-NEXT:     clz wsp, w3
145472062f5744557e270a38192554c3126ea5f97434Tim Northover
145572062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
145672062f5744557e270a38192554c3126ea5f97434Tim Northover// Data Processing (2 sources)
145772062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
145872062f5744557e270a38192554c3126ea5f97434Tim Northover        udiv x23, w2, x18
145972062f5744557e270a38192554c3126ea5f97434Tim Northover//CHECK-ERROR: error: invalid operand for instruction
146072062f5744557e270a38192554c3126ea5f97434Tim Northover//CHECK-ERROR-NEXT:     udiv x23, w2, x18
146172062f5744557e270a38192554c3126ea5f97434Tim Northover
146272062f5744557e270a38192554c3126ea5f97434Tim Northover        lsl sp, x2, x4
146372062f5744557e270a38192554c3126ea5f97434Tim Northover//CHECK-ERROR: error: invalid operand for instruction
146472062f5744557e270a38192554c3126ea5f97434Tim Northover//CHECK-ERROR-NEXT:     lsl sp, x2, x4
146572062f5744557e270a38192554c3126ea5f97434Tim Northover
146672062f5744557e270a38192554c3126ea5f97434Tim Northover        asr wsp, w3, w9
146772062f5744557e270a38192554c3126ea5f97434Tim Northover//CHECK-ERROR: error: invalid operand for instruction
146872062f5744557e270a38192554c3126ea5f97434Tim Northover//CHECK-ERROR-NEXT:     asr wsp, w3, w9
146972062f5744557e270a38192554c3126ea5f97434Tim Northover
147072062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
147172062f5744557e270a38192554c3126ea5f97434Tim Northover// Data Processing (3 sources)
147272062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
147372062f5744557e270a38192554c3126ea5f97434Tim Northover
147472062f5744557e270a38192554c3126ea5f97434Tim Northover        madd sp, x3, x9, x10
147572062f5744557e270a38192554c3126ea5f97434Tim Northover//CHECK-ERROR: error: invalid operand for instruction
147672062f5744557e270a38192554c3126ea5f97434Tim Northover//CHECK-ERROR-NEXT:     madd sp, x3, x9, x10
147772062f5744557e270a38192554c3126ea5f97434Tim Northover
147872062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
147972062f5744557e270a38192554c3126ea5f97434Tim Northover// Exception generation
148072062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
148172062f5744557e270a38192554c3126ea5f97434Tim Northover        svc #-1
148272062f5744557e270a38192554c3126ea5f97434Tim Northover        hlt #65536
148372062f5744557e270a38192554c3126ea5f97434Tim Northover        dcps4 #43
148472062f5744557e270a38192554c3126ea5f97434Tim Northover        dcps4
1485dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR: error: {{expected|immediate must be an}} integer in range [0, 65535]
148672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         svc #-1
148772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
1488dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 65535]
148972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         hlt #65536
149072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
1491dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{invalid instruction|unrecognized instruction mnemonic}}
149272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         dcps4 #43
149372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ^
1494dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{invalid instruction|unrecognized instruction mnemonic}}
149572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         dcps4
149672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ^
149772062f5744557e270a38192554c3126ea5f97434Tim Northover
149872062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
149972062f5744557e270a38192554c3126ea5f97434Tim Northover// Extract (immediate)
150072062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
150172062f5744557e270a38192554c3126ea5f97434Tim Northover
150272062f5744557e270a38192554c3126ea5f97434Tim Northover        extr w2, w20, w30, #-1
150372062f5744557e270a38192554c3126ea5f97434Tim Northover        extr w9, w19, w20, #32
1504dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
150572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         extr w2, w20, w30, #-1
150672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                            ^
1507dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
150872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         extr w9, w19, w20, #32
150972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                            ^
151072062f5744557e270a38192554c3126ea5f97434Tim Northover
151172062f5744557e270a38192554c3126ea5f97434Tim Northover        extr x10, x15, x20, #-1
151272062f5744557e270a38192554c3126ea5f97434Tim Northover        extr x20, x25, x30, #64
1513dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 63]
151472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         extr x10, x15, x20, #-1
151572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                             ^
1516dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 63]
151772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         extr x20, x25, x30, #64
151872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                             ^
151972062f5744557e270a38192554c3126ea5f97434Tim Northover
152072062f5744557e270a38192554c3126ea5f97434Tim Northover        ror w9, w10, #32
152172062f5744557e270a38192554c3126ea5f97434Tim Northover        ror x10, x11, #64
1522dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
152372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ror w9, w10, #32
152472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
1525dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 63]
152672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ror x10, x11, #64
152772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
152872062f5744557e270a38192554c3126ea5f97434Tim Northover
152972062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
153072062f5744557e270a38192554c3126ea5f97434Tim Northover// Floating-point compare
153172062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
153272062f5744557e270a38192554c3126ea5f97434Tim Northover
153372062f5744557e270a38192554c3126ea5f97434Tim Northover        fcmp s3, d2
1534dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64: error: expected floating-point constant #0.0
1535dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-ARM64: error: invalid operand for instruction
153672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         fcmp s3, d2
153772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
153872062f5744557e270a38192554c3126ea5f97434Tim Northover
153972062f5744557e270a38192554c3126ea5f97434Tim Northover        fcmp s9, #-0.0
154072062f5744557e270a38192554c3126ea5f97434Tim Northover        fcmp d3, #-0.0
154172062f5744557e270a38192554c3126ea5f97434Tim Northover        fcmp s1, #1.0
154272062f5744557e270a38192554c3126ea5f97434Tim Northover        fcmpe s30, #-0.0
1543b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected floating-point constant #0.0
154472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         fcmp s9, #-0.0
154572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
1546b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected floating-point constant #0.0
154772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         fcmp d3, #-0.0
154872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
1549b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected floating-point constant #0.0
155072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         fcmp s1, #1.0
155172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
1552b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected floating-point constant #0.0
155372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         fcmpe s30, #-0.0
155472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                    ^
155572062f5744557e270a38192554c3126ea5f97434Tim Northover
155672062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
155772062f5744557e270a38192554c3126ea5f97434Tim Northover// Floating-point conditional compare
155872062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
155972062f5744557e270a38192554c3126ea5f97434Tim Northover
156072062f5744557e270a38192554c3126ea5f97434Tim Northover        fccmp s19, s5, #-1, lt
156172062f5744557e270a38192554c3126ea5f97434Tim Northover        fccmp s20, s7, #16, hs
1562dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
156372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        fccmp s19, s5, #-1, lt
156472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
1565dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
156672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        fccmp s20, s7, #16, hs
156772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
156872062f5744557e270a38192554c3126ea5f97434Tim Northover
156972062f5744557e270a38192554c3126ea5f97434Tim Northover        fccmp d19, d5, #-1, lt
157072062f5744557e270a38192554c3126ea5f97434Tim Northover        fccmp d20, d7, #16, hs
1571dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
157272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        fccmp d19, d5, #-1, lt
157372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
1574dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
157572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        fccmp d20, d7, #16, hs
157672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
157772062f5744557e270a38192554c3126ea5f97434Tim Northover
157872062f5744557e270a38192554c3126ea5f97434Tim Northover        fccmpe s19, s5, #-1, lt
157972062f5744557e270a38192554c3126ea5f97434Tim Northover        fccmpe s20, s7, #16, hs
1580dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
158172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        fccmpe s19, s5, #-1, lt
158272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
1583dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
158472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        fccmpe s20, s7, #16, hs
158572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
158672062f5744557e270a38192554c3126ea5f97434Tim Northover
158772062f5744557e270a38192554c3126ea5f97434Tim Northover        fccmpe d19, d5, #-1, lt
158872062f5744557e270a38192554c3126ea5f97434Tim Northover        fccmpe d20, d7, #16, hs
1589dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
159072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        fccmpe d19, d5, #-1, lt
159172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
1592dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
159372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        fccmpe d20, d7, #16, hs
159472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
159572062f5744557e270a38192554c3126ea5f97434Tim Northover
159672062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
159772062f5744557e270a38192554c3126ea5f97434Tim Northover// Floating-point conditional compare
159872062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
159972062f5744557e270a38192554c3126ea5f97434Tim Northover
160072062f5744557e270a38192554c3126ea5f97434Tim Northover        fcsel q3, q20, q9, pl
160172062f5744557e270a38192554c3126ea5f97434Tim Northover        fcsel h9, h10, h11, mi
160272062f5744557e270a38192554c3126ea5f97434Tim Northover        fcsel b9, b10, b11, mi
160372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
160472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         fcsel q3, q20, q9, pl
160572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:               ^
1606cddc3e03e4ec99c0268c03a126195173e519ed58Pirama Arumuga Nainar// CHECK-ERROR-NEXT: error: instruction requires: fullfp16
160772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         fcsel h9, h10, h11, mi
160872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:               ^
160972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
161072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         fcsel b9, b10, b11, mi
161172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:               ^
161272062f5744557e270a38192554c3126ea5f97434Tim Northover
161372062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
161472062f5744557e270a38192554c3126ea5f97434Tim Northover// Floating-point data-processing (1 source)
161572062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
161672062f5744557e270a38192554c3126ea5f97434Tim Northover
161772062f5744557e270a38192554c3126ea5f97434Tim Northover        fmov d0, s3
161872062f5744557e270a38192554c3126ea5f97434Tim Northover        fcvt d0, d1
1619b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected compatible register or floating-point constant
162072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:           fmov d0, s3
1621b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT:                    ^
162272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
162372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:           fcvt d0, d1
1624b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT:                    ^
162572062f5744557e270a38192554c3126ea5f97434Tim Northover
162672062f5744557e270a38192554c3126ea5f97434Tim Northover
162772062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
162872062f5744557e270a38192554c3126ea5f97434Tim Northover// Floating-point data-processing (2 sources)
162972062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
163072062f5744557e270a38192554c3126ea5f97434Tim Northover
163172062f5744557e270a38192554c3126ea5f97434Tim Northover        fadd s0, d3, d7
163272062f5744557e270a38192554c3126ea5f97434Tim Northover        fmaxnm d3, s19, d12
163372062f5744557e270a38192554c3126ea5f97434Tim Northover        fnmul d1, d9, s18
163472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
163572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:           fadd s0, d3, d7
163672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: ^
163772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
163872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:           fmaxnm d3, s19, d12
163972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: ^
164072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
164172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:           fnmul d1, d9, s18
164272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: ^
164372062f5744557e270a38192554c3126ea5f97434Tim Northover
164472062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
164572062f5744557e270a38192554c3126ea5f97434Tim Northover// Floating-point data-processing (3 sources)
164672062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
164772062f5744557e270a38192554c3126ea5f97434Tim Northover
164872062f5744557e270a38192554c3126ea5f97434Tim Northover        fmadd b3, b4, b5, b6
164972062f5744557e270a38192554c3126ea5f97434Tim Northover        fmsub h1, h2, h3, h4
165072062f5744557e270a38192554c3126ea5f97434Tim Northover        fnmadd q3, q5, q6, q7
165172062f5744557e270a38192554c3126ea5f97434Tim Northover        fnmsub s2, s4, d5, h9
165272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
165372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         fmadd b3, b4, b5, b6
165472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:               ^
1655cddc3e03e4ec99c0268c03a126195173e519ed58Pirama Arumuga Nainar// CHECK-ERROR-NEXT: error: instruction requires: fullfp16
165672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         fmsub h1, h2, h3, h4
165772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:               ^
165872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
165972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         fnmadd q3, q5, q6, q7
166072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                ^
166172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
166272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         fnmsub s2, s4, d5, h9
166372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                ^
166472062f5744557e270a38192554c3126ea5f97434Tim Northover
166572062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
166672062f5744557e270a38192554c3126ea5f97434Tim Northover// Floating-point conditional compare
166772062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
166872062f5744557e270a38192554c3126ea5f97434Tim Northover
166972062f5744557e270a38192554c3126ea5f97434Tim Northover        fcvtzs w13, s31, #0
167072062f5744557e270a38192554c3126ea5f97434Tim Northover        fcvtzs w19, s20, #33
167172062f5744557e270a38192554c3126ea5f97434Tim Northover        fcvtzs wsp, s19, #14
1672dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [1, 32]
167372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        fcvtzs w13, s31, #0
167472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
1675dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [1, 32]
167672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        fcvtzs w19, s20, #33
167772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
167872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
167972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        fcvtzs wsp, s19, #14
168072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:               ^
168172062f5744557e270a38192554c3126ea5f97434Tim Northover
168272062f5744557e270a38192554c3126ea5f97434Tim Northover        fcvtzs x13, s31, #0
168372062f5744557e270a38192554c3126ea5f97434Tim Northover        fcvtzs x19, s20, #65
168472062f5744557e270a38192554c3126ea5f97434Tim Northover        fcvtzs sp, s19, #14
1685dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [1, 64]
168672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        fcvtzs x13, s31, #0
168772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
1688dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [1, 64]
168972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        fcvtzs x19, s20, #65
169072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
169172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
169272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        fcvtzs sp, s19, #14
169372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:               ^
169472062f5744557e270a38192554c3126ea5f97434Tim Northover
169572062f5744557e270a38192554c3126ea5f97434Tim Northover        fcvtzu w13, s31, #0
169672062f5744557e270a38192554c3126ea5f97434Tim Northover        fcvtzu w19, s20, #33
169772062f5744557e270a38192554c3126ea5f97434Tim Northover        fcvtzu wsp, s19, #14
1698dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [1, 32]
169972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        fcvtzu w13, s31, #0
170072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
1701dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [1, 32]
170272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        fcvtzu w19, s20, #33
170372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
170472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
170572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        fcvtzu wsp, s19, #14
170672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:               ^
170772062f5744557e270a38192554c3126ea5f97434Tim Northover
170872062f5744557e270a38192554c3126ea5f97434Tim Northover        fcvtzu x13, s31, #0
170972062f5744557e270a38192554c3126ea5f97434Tim Northover        fcvtzu x19, s20, #65
171072062f5744557e270a38192554c3126ea5f97434Tim Northover        fcvtzu sp, s19, #14
1711dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [1, 64]
171272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        fcvtzu x13, s31, #0
171372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
1714dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [1, 64]
171572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        fcvtzu x19, s20, #65
171672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
171772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
171872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        fcvtzu sp, s19, #14
171972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:               ^
172072062f5744557e270a38192554c3126ea5f97434Tim Northover
172172062f5744557e270a38192554c3126ea5f97434Tim Northover        scvtf w13, s31, #0
172272062f5744557e270a38192554c3126ea5f97434Tim Northover        scvtf w19, s20, #33
172372062f5744557e270a38192554c3126ea5f97434Tim Northover        scvtf wsp, s19, #14
172472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
172572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        scvtf w13, s31, #0
172672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
172772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
172872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        scvtf w19, s20, #33
172972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
173072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
173172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        scvtf wsp, s19, #14
173272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
173372062f5744557e270a38192554c3126ea5f97434Tim Northover
173472062f5744557e270a38192554c3126ea5f97434Tim Northover        scvtf x13, s31, #0
173572062f5744557e270a38192554c3126ea5f97434Tim Northover        scvtf x19, s20, #65
173672062f5744557e270a38192554c3126ea5f97434Tim Northover        scvtf sp, s19, #14
173772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
173872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        scvtf x13, s31, #0
173972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
174072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
174172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        scvtf x19, s20, #65
174272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
174372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
174472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        scvtf sp, s19, #14
174572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
174672062f5744557e270a38192554c3126ea5f97434Tim Northover
174772062f5744557e270a38192554c3126ea5f97434Tim Northover        ucvtf w13, s31, #0
174872062f5744557e270a38192554c3126ea5f97434Tim Northover        ucvtf w19, s20, #33
174972062f5744557e270a38192554c3126ea5f97434Tim Northover        ucvtf wsp, s19, #14
175072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
175172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ucvtf w13, s31, #0
175272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
175372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
175472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ucvtf w19, s20, #33
175572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
175672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
175772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ucvtf wsp, s19, #14
175872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
175972062f5744557e270a38192554c3126ea5f97434Tim Northover
176072062f5744557e270a38192554c3126ea5f97434Tim Northover        ucvtf x13, s31, #0
176172062f5744557e270a38192554c3126ea5f97434Tim Northover        ucvtf x19, s20, #65
176272062f5744557e270a38192554c3126ea5f97434Tim Northover        ucvtf sp, s19, #14
176372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
176472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ucvtf x13, s31, #0
176572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
176672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
176772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ucvtf x19, s20, #65
176872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
176972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
177072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ucvtf sp, s19, #14
177172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
177272062f5744557e270a38192554c3126ea5f97434Tim Northover
177372062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
177472062f5744557e270a38192554c3126ea5f97434Tim Northover// Floating-point immediate
177572062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
177672062f5744557e270a38192554c3126ea5f97434Tim Northover        ;; Exponent too large
177772062f5744557e270a38192554c3126ea5f97434Tim Northover        fmov d3, #0.0625
177872062f5744557e270a38192554c3126ea5f97434Tim Northover        fmov s2, #32.0
1779b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected compatible register or floating-point constant
178072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:           fmov d3, #0.0625
178172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                    ^
1782b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected compatible register or floating-point constant
178372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:           fmov s2, #32.0
178472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                    ^
178572062f5744557e270a38192554c3126ea5f97434Tim Northover
178672062f5744557e270a38192554c3126ea5f97434Tim Northover        ;; Fraction too precise
178772062f5744557e270a38192554c3126ea5f97434Tim Northover        fmov s9, #1.03125
178872062f5744557e270a38192554c3126ea5f97434Tim Northover        fmov s28, #1.96875
1789b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected compatible register or floating-point constant
179072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:           fmov s9, #1.03125
179172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                    ^
1792b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected compatible register or floating-point constant
179372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:           fmov s28, #1.96875
179472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
179572062f5744557e270a38192554c3126ea5f97434Tim Northover
179672062f5744557e270a38192554c3126ea5f97434Tim Northover        ;; No particular reason, but a striking omission
179772062f5744557e270a38192554c3126ea5f97434Tim Northover        fmov d0, #0.0
1798dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64: error: expected compatible register or floating-point constant
1799dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT:           fmov d0, #0.0
1800dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT:                    ^
180172062f5744557e270a38192554c3126ea5f97434Tim Northover
180272062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
180372062f5744557e270a38192554c3126ea5f97434Tim Northover// Floating-point <-> integer conversion
180472062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
180572062f5744557e270a38192554c3126ea5f97434Tim Northover
180672062f5744557e270a38192554c3126ea5f97434Tim Northover        fmov x3, v0.d[0]
180772062f5744557e270a38192554c3126ea5f97434Tim Northover        fmov v29.1d[1], x2
180872062f5744557e270a38192554c3126ea5f97434Tim Northover        fmov x7, v0.d[2]
180972062f5744557e270a38192554c3126ea5f97434Tim Northover        fcvtns sp, s5
181072062f5744557e270a38192554c3126ea5f97434Tim Northover        scvtf s6, wsp
1811b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected lane specifier '[1]'
181272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         fmov x3, v0.d[0]
1813b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT:                       ^
1814dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT: error: lane number incompatible with layout
1815dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-ARM64-NEXT: error: invalid operand for instruction
181672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: fmov v29.1d[1], x2
181772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
1818dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT: error: lane number incompatible with layout
1819dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-ARM64-NEXT: error: expected lane specifier '[1]'
182072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: fmov x7, v0.d[2]
182172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:               ^
182272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
182372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         fcvtns sp, s5
182472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                ^
182572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
182672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         scvtf s6, wsp
182772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
182872062f5744557e270a38192554c3126ea5f97434Tim Northover
182972062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
183072062f5744557e270a38192554c3126ea5f97434Tim Northover// Load-register (literal)
183172062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
183272062f5744557e270a38192554c3126ea5f97434Tim Northover
183372062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr sp, some_label
183472062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsw w3, somewhere
183572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
183672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr sp, some_label
183772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
183872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
183972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsw w3, somewhere
184072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:               ^
184172062f5744557e270a38192554c3126ea5f97434Tim Northover
184272062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsw x2, #1048576
184372062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr q0, #-1048580
184472062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr x0, #2
1845b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected label or encodable integer pc offset
184672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsw x2, #1048576
184772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
1848b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected label or encodable integer pc offset
184972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr q0, #-1048580
185072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
1851b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected label or encodable integer pc offset
185272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr x0, #2
185372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
185472062f5744557e270a38192554c3126ea5f97434Tim Northover
185572062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
185672062f5744557e270a38192554c3126ea5f97434Tim Northover// Load/store exclusive
185772062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
185872062f5744557e270a38192554c3126ea5f97434Tim Northover
1859dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines       stxrb w2, w3, [x4, #20]
186072062f5744557e270a38192554c3126ea5f97434Tim Northover       stlxrh w10, w11, [w2]
1861dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64: error: expected '#0'
1862dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-ARM64: error: index must be absent or #0
1863dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT:         stxrb w2, w3, [x4, #20]
186472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
186572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
186672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stlxrh w10, w11, [w2]
186772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
186872062f5744557e270a38192554c3126ea5f97434Tim Northover
186972062f5744557e270a38192554c3126ea5f97434Tim Northover       stlxr  x20, w21, [sp]
187072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
187172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stlxr  x20, w21, [sp]
187272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                ^
187372062f5744557e270a38192554c3126ea5f97434Tim Northover
187472062f5744557e270a38192554c3126ea5f97434Tim Northover       ldxr   sp, [sp]
187572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
187672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldxr   sp, [sp]
187772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                ^
187872062f5744557e270a38192554c3126ea5f97434Tim Northover
187972062f5744557e270a38192554c3126ea5f97434Tim Northover       stxp x1, x2, x3, [x4]
188072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
188172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stxp x1, x2,  x3, [x4]
188272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
188372062f5744557e270a38192554c3126ea5f97434Tim Northover
188472062f5744557e270a38192554c3126ea5f97434Tim Northover       stlxp w5, x1, w4, [x5]
188572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
188672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stlxp w5, x1, w4, [x5]
188772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
188872062f5744557e270a38192554c3126ea5f97434Tim Northover
188972062f5744557e270a38192554c3126ea5f97434Tim Northover       stlxp w17, w6, x7, [x22]
189072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
189172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stlxp w17, w6, x7, [x22]
189272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
189372062f5744557e270a38192554c3126ea5f97434Tim Northover
189472062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
189572062f5744557e270a38192554c3126ea5f97434Tim Northover// Load/store (unscaled immediate)
189672062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
189772062f5744557e270a38192554c3126ea5f97434Tim Northover
189872062f5744557e270a38192554c3126ea5f97434Tim Northover        ldurb w2, [sp, #256]
189972062f5744557e270a38192554c3126ea5f97434Tim Northover        sturh w17, [x1, #256]
190072062f5744557e270a38192554c3126ea5f97434Tim Northover        ldursw x20, [x1, #256]
190172062f5744557e270a38192554c3126ea5f97434Tim Northover        ldur x12, [sp, #256]
1902dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR: error: {{expected|index must be an}} integer in range [-256, 255]
190372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ldurb w2, [sp, #256]
190472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
1905dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
190672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sturh w17, [x1, #256]
190772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                    ^
1908dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
190972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldursw x20, [x1, #256]
191072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
1911dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
191272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldur x12, [sp, #256]
191372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
191472062f5744557e270a38192554c3126ea5f97434Tim Northover
191572062f5744557e270a38192554c3126ea5f97434Tim Northover        stur h2, [x2, #-257]
191672062f5744557e270a38192554c3126ea5f97434Tim Northover        stur b2, [x2, #-257]
191772062f5744557e270a38192554c3126ea5f97434Tim Northover        ldursb x9, [sp, #-257]
191872062f5744557e270a38192554c3126ea5f97434Tim Northover        ldur w2, [x30, #-257]
191972062f5744557e270a38192554c3126ea5f97434Tim Northover        stur q9, [x20, #-257]
1920dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR: error: {{expected|index must be an}} integer in range [-256, 255]
192172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stur h2, [x2, #-257]
192272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
1923dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
192472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stur b2, [x2, #-257]
192572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
1926dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
192772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldursb x9, [sp, #-257]
192872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                    ^
1929dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
193072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldur w2, [x30, #-257]
193172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
1932dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
193372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stur q9, [x20, #-257]
193472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
193572062f5744557e270a38192554c3126ea5f97434Tim Northover
193672062f5744557e270a38192554c3126ea5f97434Tim Northover        prfum pstl3strm, [xzr]
193772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
193872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         prfum pstl3strm, [xzr]
193972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
194072062f5744557e270a38192554c3126ea5f97434Tim Northover
194172062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
194272062f5744557e270a38192554c3126ea5f97434Tim Northover// Load-store register (immediate post-indexed)
194372062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
194472062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr x3, [x4, #25], #0
194572062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr x4, [x9, #0], #4
1946dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64: error: {{expected symbolic reference or integer|index must be a multiple of 8}} in range [0, 32760]
1947dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-ARM64: error: invalid operand for instruction
194872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr x3, [x4, #25], #0
194972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
1950dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT: error: invalid operand for instruction
1951dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT:         ldr x4, [x9, #0], #4
1952dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT:                           ^
195372062f5744557e270a38192554c3126ea5f97434Tim Northover
195472062f5744557e270a38192554c3126ea5f97434Tim Northover        strb w1, [x19], #256
195572062f5744557e270a38192554c3126ea5f97434Tim Northover        strb w9, [sp], #-257
195672062f5744557e270a38192554c3126ea5f97434Tim Northover        strh w1, [x19], #256
195772062f5744557e270a38192554c3126ea5f97434Tim Northover        strh w9, [sp], #-257
195872062f5744557e270a38192554c3126ea5f97434Tim Northover        str w1, [x19], #256
195972062f5744557e270a38192554c3126ea5f97434Tim Northover        str w9, [sp], #-257
1960dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR: error: {{expected|index must be an}} integer in range [-256, 255]
196172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         strb w1, [x19], #256
196272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
1963dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
196472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         strb w9, [sp], #-257
196572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
1966dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
196772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         strh w1, [x19], #256
196872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
1969dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
197072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         strh w9, [sp], #-257
197172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
1972dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
197372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str w1, [x19], #256
197472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
1975dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
197672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str w9, [sp], #-257
197772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
197872062f5744557e270a38192554c3126ea5f97434Tim Northover
197972062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrb w1, [x19], #256
198072062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrb w9, [sp], #-257
198172062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrh w1, [x19], #256
198272062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrh w9, [sp], #-257
198372062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr w1, [x19], #256
198472062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr w9, [sp], #-257
1985dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR: error: {{expected|index must be an}} integer in range [-256, 255]
198672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrb w1, [x19], #256
198772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
1988dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
198972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrb w9, [sp], #-257
199072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
1991dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
199272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrh w1, [x19], #256
199372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
1994dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
199572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrh w9, [sp], #-257
199672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
1997dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
199872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr w1, [x19], #256
199972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
2000dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
200172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr w9, [sp], #-257
200272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
200372062f5744557e270a38192554c3126ea5f97434Tim Northover
200472062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsb x2, [x3], #256
200572062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsb x22, [x13], #-257
200672062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsh x2, [x3], #256
200772062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsh x22, [x13], #-257
200872062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsw x2, [x3], #256
200972062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsw x22, [x13], #-257
2010dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR: error: {{expected|index must be an}} integer in range [-256, 255]
201172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsb x2, [x3], #256
201272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
2013dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
201472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsb x22, [x13], #-257
201572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
2016dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
201772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsh x2, [x3], #256
201872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
2019dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
202072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsh x22, [x13], #-257
202172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
2022dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
202372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsw x2, [x3], #256
202472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
2025dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
202672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsw x22, [x13], #-257
202772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
202872062f5744557e270a38192554c3126ea5f97434Tim Northover
202972062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsb w2, [x3], #256
203072062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsb w22, [x13], #-257
203172062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsh w2, [x3], #256
203272062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsh w22, [x13], #-257
2033dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR: error: {{expected|index must be an}} integer in range [-256, 255]
203472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsb w2, [x3], #256
203572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
2036dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
203772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsb w22, [x13], #-257
203872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
2039dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
204072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsh w2, [x3], #256
204172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
2042dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
204372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsh w22, [x13], #-257
204472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
204572062f5744557e270a38192554c3126ea5f97434Tim Northover
204672062f5744557e270a38192554c3126ea5f97434Tim Northover        str b3, [x3], #256
204772062f5744557e270a38192554c3126ea5f97434Tim Northover        str b3, [x13], #-257
204872062f5744557e270a38192554c3126ea5f97434Tim Northover        str h3, [x3], #256
204972062f5744557e270a38192554c3126ea5f97434Tim Northover        str h3, [x13], #-257
205072062f5744557e270a38192554c3126ea5f97434Tim Northover        str s3, [x3], #256
205172062f5744557e270a38192554c3126ea5f97434Tim Northover        str s3, [x13], #-257
205272062f5744557e270a38192554c3126ea5f97434Tim Northover        str d3, [x3], #256
205372062f5744557e270a38192554c3126ea5f97434Tim Northover        str d3, [x13], #-257
205472062f5744557e270a38192554c3126ea5f97434Tim Northover        str q3, [x3], #256
205572062f5744557e270a38192554c3126ea5f97434Tim Northover        str q3, [x13], #-257
2056dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR: error: {{expected|index must be an}} integer in range [-256, 255]
205772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str b3, [x3], #256
205872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
2059dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
206072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str b3, [x13], #-257
206172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
2062dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
206372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str h3, [x3], #256
206472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
2065dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
206672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str h3, [x13], #-257
206772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
2068dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
206972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str s3, [x3], #256
207072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
2071dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
207272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str s3, [x13], #-257
207372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
2074dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
207572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str d3, [x3], #256
207672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
2077dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
207872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str d3, [x13], #-257
207972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
2080dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
208172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str q3, [x3], #256
208272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
2083dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
208472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str q3, [x13], #-257
208572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
208672062f5744557e270a38192554c3126ea5f97434Tim Northover
208772062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr b3, [x3], #256
208872062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr b3, [x13], #-257
208972062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr h3, [x3], #256
209072062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr h3, [x13], #-257
209172062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr s3, [x3], #256
209272062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr s3, [x13], #-257
209372062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr d3, [x3], #256
209472062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr d3, [x13], #-257
209572062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr q3, [x3], #256
209672062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr q3, [x13], #-257
2097dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR: error: {{expected|index must be an}} integer in range [-256, 255]
209872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr b3, [x3], #256
209972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
2100dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
210172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr b3, [x13], #-257
210272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
2103dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
210472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr h3, [x3], #256
210572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
2106dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
210772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr h3, [x13], #-257
210872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
2109dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
211072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr s3, [x3], #256
211172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
2112dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
211372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr s3, [x13], #-257
211472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
2115dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
211672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr d3, [x3], #256
211772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
2118dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
211972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr d3, [x13], #-257
212072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
2121dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
212272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr q3, [x3], #256
212372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
2124dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
212572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr q3, [x13], #-257
212672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                        ^
212772062f5744557e270a38192554c3126ea5f97434Tim Northover
212872062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
212972062f5744557e270a38192554c3126ea5f97434Tim Northover// Load-store register (immediate pre-indexed)
213072062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
213172062f5744557e270a38192554c3126ea5f97434Tim Northover
213272062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr x3, [x4]!
213372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error:
213472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr x3, [x4]!
213572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
213672062f5744557e270a38192554c3126ea5f97434Tim Northover
213772062f5744557e270a38192554c3126ea5f97434Tim Northover        strb w1, [x19, #256]!
213872062f5744557e270a38192554c3126ea5f97434Tim Northover        strb w9, [sp, #-257]!
213972062f5744557e270a38192554c3126ea5f97434Tim Northover        strh w1, [x19, #256]!
214072062f5744557e270a38192554c3126ea5f97434Tim Northover        strh w9, [sp, #-257]!
214172062f5744557e270a38192554c3126ea5f97434Tim Northover        str w1, [x19, #256]!
214272062f5744557e270a38192554c3126ea5f97434Tim Northover        str w9, [sp, #-257]!
214372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
214472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         strb w1, [x19, #256]!
214572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                             ^
2146dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
214772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         strb w9, [sp, #-257]!
214872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
214972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
215072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         strh w1, [x19, #256]!
215172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                             ^
2152dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
215372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         strh w9, [sp, #-257]!
215472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
215572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
215672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str w1, [x19, #256]!
215772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                            ^
2158dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
215972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str w9, [sp, #-257]!
216072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
216172062f5744557e270a38192554c3126ea5f97434Tim Northover
216272062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrb w1, [x19, #256]!
216372062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrb w9, [sp, #-257]!
216472062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrh w1, [x19, #256]!
216572062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrh w9, [sp, #-257]!
216672062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr w1, [x19, #256]!
216772062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr w9, [sp, #-257]!
216872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
216972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrb w1, [x19, #256]!
217072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                             ^
2171dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
217272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrb w9, [sp, #-257]!
217372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
217472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
217572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrh w1, [x19, #256]!
217672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                             ^
2177dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
217872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrh w9, [sp, #-257]!
217972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
218072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
218172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr w1, [x19, #256]!
218272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                            ^
2183dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
218472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr w9, [sp, #-257]!
218572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
218672062f5744557e270a38192554c3126ea5f97434Tim Northover
218772062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsb x2, [x3, #256]!
218872062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsb x22, [x13, #-257]!
218972062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsh x2, [x3, #256]!
219072062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsh x22, [x13, #-257]!
219172062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsw x2, [x3, #256]!
219272062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsw x22, [x13, #-257]!
219372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
219472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsb x2, [x3, #256]!
219572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                             ^
2196dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
219772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsb x22, [x13, #-257]!
219872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                    ^
219972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
220072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsh x2, [x3, #256]!
220172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                             ^
2202dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
220372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsh x22, [x13, #-257]!
220472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                    ^
220572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
220672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsw x2, [x3, #256]!
220772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                             ^
2208dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
220972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsw x22, [x13, #-257]!
221072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                    ^
221172062f5744557e270a38192554c3126ea5f97434Tim Northover
221272062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsb w2, [x3, #256]!
221372062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsb w22, [x13, #-257]!
221472062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsh w2, [x3, #256]!
221572062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsh w22, [x13, #-257]!
221672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
221772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsb w2, [x3, #256]!
221872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                             ^
2219dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
222072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsb w22, [x13, #-257]!
222172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                    ^
222272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
222372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsh w2, [x3, #256]!
222472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                             ^
2225dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
222672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsh w22, [x13, #-257]!
222772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                    ^
222872062f5744557e270a38192554c3126ea5f97434Tim Northover
222972062f5744557e270a38192554c3126ea5f97434Tim Northover        str b3, [x3, #256]!
223072062f5744557e270a38192554c3126ea5f97434Tim Northover        str b3, [x13, #-257]!
223172062f5744557e270a38192554c3126ea5f97434Tim Northover        str h3, [x3, #256]!
223272062f5744557e270a38192554c3126ea5f97434Tim Northover        str h3, [x13, #-257]!
223372062f5744557e270a38192554c3126ea5f97434Tim Northover        str s3, [x3, #256]!
223472062f5744557e270a38192554c3126ea5f97434Tim Northover        str s3, [x13, #-257]!
223572062f5744557e270a38192554c3126ea5f97434Tim Northover        str d3, [x3, #256]!
223672062f5744557e270a38192554c3126ea5f97434Tim Northover        str d3, [x13, #-257]!
223772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
223872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str b3, [x3, #256]!
223972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
2240dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
224172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str b3, [x13, #-257]!
224272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
224372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
224472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str h3, [x3, #256]!
224572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
2246dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
224772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str h3, [x13, #-257]!
224872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
224972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
225072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str s3, [x3, #256]!
225172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
2252dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
225372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str s3, [x13, #-257]!
225472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
225572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
225672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str d3, [x3, #256]!
225772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
2258dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
225972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str d3, [x13, #-257]!
226072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
226172062f5744557e270a38192554c3126ea5f97434Tim Northover
226272062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr b3, [x3, #256]!
226372062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr b3, [x13, #-257]!
226472062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr h3, [x3, #256]!
226572062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr h3, [x13, #-257]!
226672062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr s3, [x3, #256]!
226772062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr s3, [x13, #-257]!
226872062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr d3, [x3, #256]!
226972062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr d3, [x13, #-257]!
227072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
227172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr b3, [x3, #256]!
227272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
2273dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
227472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr b3, [x13, #-257]!
227572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
227672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
227772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr h3, [x3, #256]!
227872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
2279dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
228072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr h3, [x13, #-257]!
228172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
228272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
228372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr s3, [x3, #256]!
228472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
2285dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
228672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr s3, [x13, #-257]!
228772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
228872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
228972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr d3, [x3, #256]!
229072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
2291dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
229272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr d3, [x13, #-257]!
229372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
229472062f5744557e270a38192554c3126ea5f97434Tim Northover
229572062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
229672062f5744557e270a38192554c3126ea5f97434Tim Northover// Load/store (unprivileged)
229772062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
229872062f5744557e270a38192554c3126ea5f97434Tim Northover
229972062f5744557e270a38192554c3126ea5f97434Tim Northover        ldtrb w2, [sp, #256]
230072062f5744557e270a38192554c3126ea5f97434Tim Northover        sttrh w17, [x1, #256]
230172062f5744557e270a38192554c3126ea5f97434Tim Northover        ldtrsw x20, [x1, #256]
230272062f5744557e270a38192554c3126ea5f97434Tim Northover        ldtr x12, [sp, #256]
2303dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR: error: {{expected|index must be an}} integer in range [-256, 255]
230472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ldtrb w2, [sp, #256]
230572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
2306dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
230772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sttrh w17, [x1, #256]
230872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                    ^
2309dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
231072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldtrsw x20, [x1, #256]
231172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
2312dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
231372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldtr x12, [sp, #256]
231472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
231572062f5744557e270a38192554c3126ea5f97434Tim Northover
231672062f5744557e270a38192554c3126ea5f97434Tim Northover        sttr h2, [x2, #-257]
231772062f5744557e270a38192554c3126ea5f97434Tim Northover        sttr b2, [x2, #-257]
231872062f5744557e270a38192554c3126ea5f97434Tim Northover        ldtrsb x9, [sp, #-257]
231972062f5744557e270a38192554c3126ea5f97434Tim Northover        ldtr w2, [x30, #-257]
232072062f5744557e270a38192554c3126ea5f97434Tim Northover        sttr q9, [x20, #-257]
232172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
232272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sttr h2, [x2, #-257]
2323b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT:              ^
232472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
232572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sttr b2, [x2, #-257]
2326b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT:              ^
2327dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
232872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldtrsb x9, [sp, #-257]
232972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                    ^
2330dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
233172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldtr w2, [x30, #-257]
233272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
233372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
233472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sttr q9, [x20, #-257]
233572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
233672062f5744557e270a38192554c3126ea5f97434Tim Northover
233772062f5744557e270a38192554c3126ea5f97434Tim Northover
233872062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
233972062f5744557e270a38192554c3126ea5f97434Tim Northover// Load/store (unsigned immediate)
234072062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
234172062f5744557e270a38192554c3126ea5f97434Tim Northover
234272062f5744557e270a38192554c3126ea5f97434Tim Northover//// Out of range immediates
234372062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr q0, [x11, #65536]
234472062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr x0, [sp, #32768]
234572062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr w0, [x4, #16384]
234672062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrh w2, [x21, #8192]
234772062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrb w3, [x12, #4096]
2348dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR: error: {{expected|index must be an}} integer in range [-256, 255]
234972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr q0, [x11, #65536]
235072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
2351dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
235272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr x0, [sp, #32768]
235372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
2354dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
235572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr w0, [x4, #16384]
235672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
2357dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
235872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrh w2, [x21, #8192]
235972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
2360dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
236172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrb w3, [x12, #4096]
236272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
236372062f5744557e270a38192554c3126ea5f97434Tim Northover
236472062f5744557e270a38192554c3126ea5f97434Tim Northover//// Misaligned addresses
236572062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr w0, [x0, #2]
236672062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsh w2, [x0, #123]
236772062f5744557e270a38192554c3126ea5f97434Tim Northover        str q0, [x0, #8]
2368dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64: error: too few operands for instruction
2369dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT:         ldr w0, [x0, #2]
2370dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT:                 ^
2371dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT: error: too few operands for instruction
2372dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT:         ldrsh w2, [x0, #123]
2373dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT:                   ^
2374dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT: error: too few operands for instruction
2375dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT:         str q0, [x0, #8]
2376dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT:                 ^
237772062f5744557e270a38192554c3126ea5f97434Tim Northover
237872062f5744557e270a38192554c3126ea5f97434Tim Northover//// 32-bit addresses
237972062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr w0, [w20]
238072062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsh x3, [wsp]
238172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
238272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr w0, [w20]
238372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
238472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
238572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsh x3, [wsp]
238672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                    ^
238772062f5744557e270a38192554c3126ea5f97434Tim Northover
238872062f5744557e270a38192554c3126ea5f97434Tim Northover//// Store things
238972062f5744557e270a38192554c3126ea5f97434Tim Northover        strb w0, [wsp]
239072062f5744557e270a38192554c3126ea5f97434Tim Northover        strh w31, [x23, #1]
239172062f5744557e270a38192554c3126ea5f97434Tim Northover        str x5, [x22, #12]
239272062f5744557e270a38192554c3126ea5f97434Tim Northover        str w7, [x12, #16384]
239372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
239472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: strb w0, [wsp]
239572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:           ^
2396dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64: error: invalid operand for instruction
2397dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT:         strh w31, [x23, #1]
2398dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT:              ^
2399dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT: error: too few operands for instruction
2400dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT:         str x5, [x22, #12]
2401dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT:                 ^
2402dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|index must be an}} integer in range [-256, 255]
240372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str w7, [x12, #16384]
240472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
240572062f5744557e270a38192554c3126ea5f97434Tim Northover
240672062f5744557e270a38192554c3126ea5f97434Tim Northover//// Bad PRFMs
240772062f5744557e270a38192554c3126ea5f97434Tim Northover        prfm #-1, [sp]
240872062f5744557e270a38192554c3126ea5f97434Tim Northover        prfm #32, [sp, #8]
240972062f5744557e270a38192554c3126ea5f97434Tim Northover        prfm pldl1strm, [w3, #8]
241072062f5744557e270a38192554c3126ea5f97434Tim Northover        prfm wibble, [sp]
2411dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64: error: Invalid immediate for instruction
2412dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-ARM64: error: prefetch operand out of range, [0,31] expected
241372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        prfm #-1, [sp]
241472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
2415dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT: error: Invalid immediate for instruction
2416dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-ARM64-NEXT: error: prefetch operand out of range, [0,31] expected
241772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        prfm #32, [sp, #8]
241872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
241972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
242072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        prfm pldl1strm, [w3, #8]
242172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
2422dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT: error: operand specifier not recognised
2423dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-ARM64-NEXT: error: pre-fetch hint expected
242472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        prfm wibble, [sp]
242572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
242672062f5744557e270a38192554c3126ea5f97434Tim Northover
242772062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
242872062f5744557e270a38192554c3126ea5f97434Tim Northover// Load/store register (register offset)
242972062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
243072062f5744557e270a38192554c3126ea5f97434Tim Northover
243172062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr w3, [xzr, x3]
243272062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr w4, [x0, x4, lsl]
243372062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr w9, [x5, x5, uxtw]
243472062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr w10, [x6, x9, sxtw #2]
243572062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr w11, [x7, w2, lsl #2]
243672062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr w12, [x8, w1, sxtx]
243772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
243872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        ldr w3, [xzr, x3]
243972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
244072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected #imm after shift specifier
244172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr w4, [x0, x4, lsl]
244272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                             ^
2443b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'lsl' or 'sxtx' with optional shift of #0 or #2
244472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr w9, [x5, x5, uxtw]
244572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                          ^
2446b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'lsl' or 'sxtx' with optional shift of #0 or #2
244772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr w10, [x6, x9, sxtw #2]
244872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
2449b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'uxtw' or 'sxtw' with optional shift of #0 or #2
245072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr w11, [x7, w2, lsl #2]
245172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
2452b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'uxtw' or 'sxtw' with optional shift of #0 or #2
245372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr w12, [x8, w1, sxtx]
245472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
245572062f5744557e270a38192554c3126ea5f97434Tim Northover
245672062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsb w9, [x4, x2, lsl #-1]
245772062f5744557e270a38192554c3126ea5f97434Tim Northover        strb w9, [x4, x2, lsl #1]
245872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
245972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsb w9, [x4, x2, lsl #-1]
246072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                                 ^
2461b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'lsl' or 'sxtx' with optional shift of #0
246272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         strb w9, [x4, x2, lsl #1]
246372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
246472062f5744557e270a38192554c3126ea5f97434Tim Northover
246572062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsh w9, [x4, x2, lsl #-1]
246672062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr h13, [x4, w2, uxtw #2]
246772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
246872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsh w9, [x4, x2, lsl #-1]
246972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                                 ^
2470b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'uxtw' or 'sxtw' with optional shift of #0 or #1
247172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr h13, [x4, w2, uxtw #2]
2472b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT:                           ^
247372062f5744557e270a38192554c3126ea5f97434Tim Northover
247472062f5744557e270a38192554c3126ea5f97434Tim Northover        str w9, [x5, w9, sxtw #-1]
247572062f5744557e270a38192554c3126ea5f97434Tim Northover        str s3, [sp, w9, uxtw #1]
247672062f5744557e270a38192554c3126ea5f97434Tim Northover        ldrsw x9, [x15, x4, sxtx #3]
247772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
247872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str w9, [x5, w9, sxtw #-1]
247972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                                ^
2480b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'uxtw' or 'sxtw' with optional shift of #0 or #2
248172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str s3, [sp, w9, uxtw #1]
2482b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT:                          ^
2483b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'lsl' or 'sxtx' with optional shift of #0 or #2
248472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldrsw x9, [x15, x4, sxtx #3]
2485b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT:                             ^
248672062f5744557e270a38192554c3126ea5f97434Tim Northover
248772062f5744557e270a38192554c3126ea5f97434Tim Northover        str xzr, [x5, x9, sxtx #-1]
248872062f5744557e270a38192554c3126ea5f97434Tim Northover        prfm pldl3keep, [sp, x20, lsl #2]
248972062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr d3, [x20, wzr, uxtw #4]
249072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
249172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str xzr, [x5, x9, sxtx #-1]
249272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                                 ^
2493b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'lsl' or 'sxtx' with optional shift of #0 or #3
249472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         prfm pldl3keep, [sp, x20, lsl #2]
249572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
2496b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'uxtw' or 'sxtw' with optional shift of #0 or #3
249772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr d3, [x20, wzr, uxtw #4]
249872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
249972062f5744557e270a38192554c3126ea5f97434Tim Northover
250072062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr q5, [sp, x2, lsl #-1]
250172062f5744557e270a38192554c3126ea5f97434Tim Northover        ldr q10, [x20, w4, uxtw #2]
250272062f5744557e270a38192554c3126ea5f97434Tim Northover        str q21, [x20, w4, uxtw #5]
250372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected integer shift amount
250472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr q5, [sp, x2, lsl #-1]
250572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                               ^
2506dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT: error: expected 'lsl' or 'sxtw' with optional shift of #0 or #4
2507dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-ARM64-NEXT: error: expected 'uxtw' or 'sxtw' with optional shift of #0 or #4
250872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldr q10, [x20, w4, uxtw #2]
250972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
2510dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT: error: expected 'lsl' or 'sxtw' with optional shift of #0 or #4
2511dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-ARM64-NEXT: error: expected 'uxtw' or 'sxtw' with optional shift of #0 or #4
251272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         str q21, [x20, w4, uxtw #5]
251372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
251472062f5744557e270a38192554c3126ea5f97434Tim Northover
251572062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
251672062f5744557e270a38192554c3126ea5f97434Tim Northover// Load/store register pair (offset)
251772062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
251872062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp w3, w2, [x4, #1]
251972062f5744557e270a38192554c3126ea5f97434Tim Northover        stp w1, w2, [x3, #253]
252072062f5744557e270a38192554c3126ea5f97434Tim Northover        stp w9, w10, [x5, #256]
252172062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp w11, w12, [x9, #-260]
252272062f5744557e270a38192554c3126ea5f97434Tim Northover        stp wsp, w9, [sp]
2523dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
252472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp w3, w2, [x4, #1]
2525b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT:                          ^
2526dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
252772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp w1, w2, [x3, #253]
252872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
2529dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
253072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp w9, w10, [x5, #256]
253172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
2532dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
253372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp w11, w12, [x9, #-260]
253472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
253572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
253672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp wsp, w9, [sp]
253772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
253872062f5744557e270a38192554c3126ea5f97434Tim Northover
253972062f5744557e270a38192554c3126ea5f97434Tim Northover        ldpsw x9, x2, [sp, #2]
254072062f5744557e270a38192554c3126ea5f97434Tim Northover        ldpsw x1, x2, [x10, #256]
254172062f5744557e270a38192554c3126ea5f97434Tim Northover        ldpsw x3, x4, [x11, #-260]
2542dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
254372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldpsw x9, x2, [sp, #2]
254472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
2545dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
254672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldpsw x1, x2, [x10, #256]
254772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
2548dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
254972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldpsw x3, x4, [x11, #-260]
255072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
255172062f5744557e270a38192554c3126ea5f97434Tim Northover
255272062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp x2, x5, [sp, #4]
255372062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp x5, x6, [x9, #512]
255472062f5744557e270a38192554c3126ea5f97434Tim Northover        stp x7, x8, [x10, #-520]
2555dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR: error: {{expected integer|index must be a}} multiple of 8 in range [-512, 504]
255672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp x2, x5, [sp, #4]
255772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
2558dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 8 in range [-512, 504]
255972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp x5, x6, [x9, #512]
256072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
2561dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 8 in range [-512, 504]
256272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp x7, x8, [x10, #-520]
256372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
256472062f5744557e270a38192554c3126ea5f97434Tim Northover
256572062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp sp, x3, [x10]
256672062f5744557e270a38192554c3126ea5f97434Tim Northover        stp x3, sp, [x9]
256772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
256872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp sp, x3, [x10]
256972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
257072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
257172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp x3, sp, [x9]
257272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
257372062f5744557e270a38192554c3126ea5f97434Tim Northover
257472062f5744557e270a38192554c3126ea5f97434Tim Northover        stp s3, s5, [sp, #-2]
257572062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp s6, s26, [x4, #-260]
257672062f5744557e270a38192554c3126ea5f97434Tim Northover        stp s13, s19, [x5, #256]
2577dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
257872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp s3, s5, [sp, #-2]
257972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
2580dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
258172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp s6, s26, [x4, #-260]
258272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
2583dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
258472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp s13, s19, [x5, #256]
258572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
258672062f5744557e270a38192554c3126ea5f97434Tim Northover
258772062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp d3, d4, [xzr]
258872062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp d5, d6, [x0, #512]
258972062f5744557e270a38192554c3126ea5f97434Tim Northover        stp d7, d8, [x0, #-520]
259072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
259172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp d3, d4, [xzr]
259272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
2593dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 8 in range [-512, 504]
259472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp d5, d6, [x0, #512]
259572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
2596dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 8 in range [-512, 504]
259772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp d7, d8, [x0, #-520]
259872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
259972062f5744557e270a38192554c3126ea5f97434Tim Northover
260072062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp d3, q2, [sp]
260172062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp q3, q5, [sp, #8]
260272062f5744557e270a38192554c3126ea5f97434Tim Northover        stp q20, q25, [x5, #1024]
260372062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp q30, q15, [x23, #-1040]
260472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
260572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp d3, q2, [sp]
260672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
2607dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 16 in range [-1024, 1008]
260872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp q3, q5, [sp, #8]
260972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
2610dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 16 in range [-1024, 1008]
261172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp q20, q25, [x5, #1024]
261272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
2613dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 16 in range [-1024, 1008]
261472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp q30, q15, [x23, #-1040]
261572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
261672062f5744557e270a38192554c3126ea5f97434Tim Northover
261772062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
261872062f5744557e270a38192554c3126ea5f97434Tim Northover// Load/store register pair (post-indexed)
261972062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
262072062f5744557e270a38192554c3126ea5f97434Tim Northover
262172062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp w3, w2, [x4], #1
262272062f5744557e270a38192554c3126ea5f97434Tim Northover        stp w1, w2, [x3], #253
262372062f5744557e270a38192554c3126ea5f97434Tim Northover        stp w9, w10, [x5], #256
262472062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp w11, w12, [x9], #-260
262572062f5744557e270a38192554c3126ea5f97434Tim Northover        stp wsp, w9, [sp], #0
2626dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
262772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp w3, w2, [x4], #1
262872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
2629dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
263072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp w1, w2, [x3], #253
263172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
2632dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
263372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp w9, w10, [x5], #256
263472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
2635dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
263672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp w11, w12, [x9], #-260
263772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
263872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
263972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp wsp, w9, [sp], #0
264072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
264172062f5744557e270a38192554c3126ea5f97434Tim Northover
264272062f5744557e270a38192554c3126ea5f97434Tim Northover        ldpsw x9, x2, [sp], #2
264372062f5744557e270a38192554c3126ea5f97434Tim Northover        ldpsw x1, x2, [x10], #256
264472062f5744557e270a38192554c3126ea5f97434Tim Northover        ldpsw x3, x4, [x11], #-260
2645dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
264672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldpsw x9, x2, [sp], #2
264772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
2648dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
264972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldpsw x1, x2, [x10], #256
265072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
2651dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
265272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldpsw x3, x4, [x11], #-260
265372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
265472062f5744557e270a38192554c3126ea5f97434Tim Northover
265572062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp x2, x5, [sp], #4
265672062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp x5, x6, [x9], #512
265772062f5744557e270a38192554c3126ea5f97434Tim Northover        stp x7, x8, [x10], #-520
2658dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR: error: {{expected integer|index must be a}} multiple of 8 in range [-512, 504]
265972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp x2, x5, [sp], #4
2660b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT:                           ^
2661dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 8 in range [-512, 504]
266272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp x5, x6, [x9], #512
2663b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT:                           ^
2664dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 8 in range [-512, 504]
266572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp x7, x8, [x10], #-520
2666b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT:                            ^
266772062f5744557e270a38192554c3126ea5f97434Tim Northover
266872062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp sp, x3, [x10], #0
266972062f5744557e270a38192554c3126ea5f97434Tim Northover        stp x3, sp, [x9], #0
267072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
267172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp sp, x3, [x10], #0
267272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
267372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
267472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp x3, sp, [x9], #0
267572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
267672062f5744557e270a38192554c3126ea5f97434Tim Northover
267772062f5744557e270a38192554c3126ea5f97434Tim Northover        stp s3, s5, [sp], #-2
267872062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp s6, s26, [x4], #-260
267972062f5744557e270a38192554c3126ea5f97434Tim Northover        stp s13, s19, [x5], #256
2680dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
268172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp s3, s5, [sp], #-2
268272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
2683dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
268472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp s6, s26, [x4], #-260
268572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
2686dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
268772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp s13, s19, [x5], #256
268872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
268972062f5744557e270a38192554c3126ea5f97434Tim Northover
269072062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp d3, d4, [xzr], #0
269172062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp d5, d6, [x0], #512
269272062f5744557e270a38192554c3126ea5f97434Tim Northover        stp d7, d8, [x0], #-520
269372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
269472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp d3, d4, [xzr], #0
269572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
2696dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 8 in range [-512, 504]
269772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp d5, d6, [x0], #512
269872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
2699dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 8 in range [-512, 504]
270072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp d7, d8, [x0], #-520
270172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
270272062f5744557e270a38192554c3126ea5f97434Tim Northover
270372062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp d3, q2, [sp], #0
270472062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp q3, q5, [sp], #8
270572062f5744557e270a38192554c3126ea5f97434Tim Northover        stp q20, q25, [x5], #1024
270672062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp q30, q15, [x23], #-1040
270772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
270872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp d3, q2, [sp], #0
270972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
2710dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 16 in range [-1024, 1008]
271172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp q3, q5, [sp], #8
271272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
2713dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 16 in range [-1024, 1008]
271472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp q20, q25, [x5], #1024
271572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
2716dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 16 in range [-1024, 1008]
271772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp q30, q15, [x23], #-1040
271872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
271972062f5744557e270a38192554c3126ea5f97434Tim Northover
272072062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
272172062f5744557e270a38192554c3126ea5f97434Tim Northover// Load/store register pair (pre-indexed)
272272062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
272372062f5744557e270a38192554c3126ea5f97434Tim Northover
272472062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp w3, w2, [x4, #1]!
272572062f5744557e270a38192554c3126ea5f97434Tim Northover        stp w1, w2, [x3, #253]!
272672062f5744557e270a38192554c3126ea5f97434Tim Northover        stp w9, w10, [x5, #256]!
272772062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp w11, w12, [x9, #-260]!
272872062f5744557e270a38192554c3126ea5f97434Tim Northover        stp wsp, w9, [sp, #0]!
2729dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
273072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp w3, w2, [x4, #1]!
273172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
2732dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
273372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp w1, w2, [x3, #253]!
273472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
2735dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
273672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp w9, w10, [x5, #256]!
273772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
2738dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
273972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp w11, w12, [x9, #-260]!
274072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
274172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
274272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp wsp, w9, [sp, #0]!
274372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
274472062f5744557e270a38192554c3126ea5f97434Tim Northover
274572062f5744557e270a38192554c3126ea5f97434Tim Northover        ldpsw x9, x2, [sp, #2]!
274672062f5744557e270a38192554c3126ea5f97434Tim Northover        ldpsw x1, x2, [x10, #256]!
274772062f5744557e270a38192554c3126ea5f97434Tim Northover        ldpsw x3, x4, [x11, #-260]!
2748dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
274972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldpsw x9, x2, [sp, #2]!
275072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
2751dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
275272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldpsw x1, x2, [x10, #256]!
275372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
2754dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
275572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldpsw x3, x4, [x11, #-260]!
275672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
275772062f5744557e270a38192554c3126ea5f97434Tim Northover
275872062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp x2, x5, [sp, #4]!
275972062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp x5, x6, [x9, #512]!
276072062f5744557e270a38192554c3126ea5f97434Tim Northover        stp x7, x8, [x10, #-520]!
2761dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR: error: {{expected integer|index must be a}} multiple of 8 in range [-512, 504]
276272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp x2, x5, [sp, #4]!
276372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
2764dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 8 in range [-512, 504]
276572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp x5, x6, [x9, #512]!
276672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
2767dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 8 in range [-512, 504]
276872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp x7, x8, [x10, #-520]!
276972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
277072062f5744557e270a38192554c3126ea5f97434Tim Northover
277172062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp sp, x3, [x10, #0]!
277272062f5744557e270a38192554c3126ea5f97434Tim Northover        stp x3, sp, [x9, #0]!
277372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
277472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp sp, x3, [x10, #0]!
277572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
277672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
277772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp x3, sp, [x9, #0]!
277872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
277972062f5744557e270a38192554c3126ea5f97434Tim Northover
278072062f5744557e270a38192554c3126ea5f97434Tim Northover        stp s3, s5, [sp, #-2]!
278172062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp s6, s26, [x4, #-260]!
278272062f5744557e270a38192554c3126ea5f97434Tim Northover        stp s13, s19, [x5, #256]!
2783dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
278472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp s3, s5, [sp, #-2]!
278572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
2786dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
278772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp s6, s26, [x4, #-260]!
278872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
2789dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
279072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp s13, s19, [x5, #256]!
279172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
279272062f5744557e270a38192554c3126ea5f97434Tim Northover
279372062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp d3, d4, [xzr, #0]!
279472062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp d5, d6, [x0, #512]!
279572062f5744557e270a38192554c3126ea5f97434Tim Northover        stp d7, d8, [x0, #-520]!
279672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
279772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp d3, d4, [xzr, #0]!
279872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
2799dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 8 in range [-512, 504]
280072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp d5, d6, [x0, #512]!
280172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
2802dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 8 in range [-512, 504]
280372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp d7, d8, [x0, #-520]!
280472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
280572062f5744557e270a38192554c3126ea5f97434Tim Northover
280672062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp d3, q2, [sp, #0]!
280772062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp q3, q5, [sp, #8]!
280872062f5744557e270a38192554c3126ea5f97434Tim Northover        stp q20, q25, [x5, #1024]!
280972062f5744557e270a38192554c3126ea5f97434Tim Northover        ldp q30, q15, [x23, #-1040]!
281072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
281172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp d3, q2, [sp, #0]!
281272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
2813dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 16 in range [-1024, 1008]
281472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp q3, q5, [sp, #8]!
281572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
2816dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 16 in range [-1024, 1008]
281772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stp q20, q25, [x5, #1024]!
281872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
2819dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 16 in range [-1024, 1008]
282072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldp q30, q15, [x23, #-1040]!
282172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
282272062f5744557e270a38192554c3126ea5f97434Tim Northover
282372062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
282472062f5744557e270a38192554c3126ea5f97434Tim Northover// Load/store register pair (offset)
282572062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
282672062f5744557e270a38192554c3126ea5f97434Tim Northover        ldnp w3, w2, [x4, #1]
282772062f5744557e270a38192554c3126ea5f97434Tim Northover        stnp w1, w2, [x3, #253]
282872062f5744557e270a38192554c3126ea5f97434Tim Northover        stnp w9, w10, [x5, #256]
282972062f5744557e270a38192554c3126ea5f97434Tim Northover        ldnp w11, w12, [x9, #-260]
283072062f5744557e270a38192554c3126ea5f97434Tim Northover        stnp wsp, w9, [sp]
2831dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
283272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldnp w3, w2, [x4, #1]
2833b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT:                           ^
2834dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
283572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stnp w1, w2, [x3, #253]
2836b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT:                           ^
2837dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
283872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stnp w9, w10, [x5, #256]
2839b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT:                            ^
2840dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
284172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldnp w11, w12, [x9, #-260]
2842b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT:                             ^
284372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
284472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stnp wsp, w9, [sp]
2845b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT:              ^
284672062f5744557e270a38192554c3126ea5f97434Tim Northover
284772062f5744557e270a38192554c3126ea5f97434Tim Northover        ldnp x2, x5, [sp, #4]
284872062f5744557e270a38192554c3126ea5f97434Tim Northover        ldnp x5, x6, [x9, #512]
284972062f5744557e270a38192554c3126ea5f97434Tim Northover        stnp x7, x8, [x10, #-520]
2850dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR: error: {{expected integer|index must be a}} multiple of 8 in range [-512, 504]
285172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldnp x2, x5, [sp, #4]
2852b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT:                           ^
2853dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 8 in range [-512, 504]
285472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldnp x5, x6, [x9, #512]
2855b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT:                           ^
2856dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 8 in range [-512, 504]
285772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stnp x7, x8, [x10, #-520]
2858b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT:                            ^
285972062f5744557e270a38192554c3126ea5f97434Tim Northover
286072062f5744557e270a38192554c3126ea5f97434Tim Northover        ldnp sp, x3, [x10]
286172062f5744557e270a38192554c3126ea5f97434Tim Northover        stnp x3, sp, [x9]
286272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
286372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldnp sp, x3, [x10]
286472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
286572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
286672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stnp x3, sp, [x9]
286772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
286872062f5744557e270a38192554c3126ea5f97434Tim Northover
286972062f5744557e270a38192554c3126ea5f97434Tim Northover        stnp s3, s5, [sp, #-2]
287072062f5744557e270a38192554c3126ea5f97434Tim Northover        ldnp s6, s26, [x4, #-260]
287172062f5744557e270a38192554c3126ea5f97434Tim Northover        stnp s13, s19, [x5, #256]
2872dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
287372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stnp s3, s5, [sp, #-2]
287472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
2875dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
287672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldnp s6, s26, [x4, #-260]
287772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
2878dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 4 in range [-256, 252]
287972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stnp s13, s19, [x5, #256]
288072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
288172062f5744557e270a38192554c3126ea5f97434Tim Northover
288272062f5744557e270a38192554c3126ea5f97434Tim Northover        ldnp d3, d4, [xzr]
288372062f5744557e270a38192554c3126ea5f97434Tim Northover        ldnp d5, d6, [x0, #512]
288472062f5744557e270a38192554c3126ea5f97434Tim Northover        stnp d7, d8, [x0, #-520]
288572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
288672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldnp d3, d4, [xzr]
288772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
2888dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 8 in range [-512, 504]
288972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldnp d5, d6, [x0, #512]
289072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
2891dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 8 in range [-512, 504]
289272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stnp d7, d8, [x0, #-520]
289372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
289472062f5744557e270a38192554c3126ea5f97434Tim Northover
289572062f5744557e270a38192554c3126ea5f97434Tim Northover        ldnp d3, q2, [sp]
289672062f5744557e270a38192554c3126ea5f97434Tim Northover        ldnp q3, q5, [sp, #8]
289772062f5744557e270a38192554c3126ea5f97434Tim Northover        stnp q20, q25, [x5, #1024]
289872062f5744557e270a38192554c3126ea5f97434Tim Northover        ldnp q30, q15, [x23, #-1040]
289972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
290072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldnp d3, q2, [sp]
290172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
2902dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 16 in range [-1024, 1008]
290372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldnp q3, q5, [sp, #8]
290472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
2905dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 16 in range [-1024, 1008]
290672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         stnp q20, q25, [x5, #1024]
290772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
2908dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected integer|index must be a}} multiple of 16 in range [-1024, 1008]
290972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ldnp q30, q15, [x23, #-1040]
291072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
291172062f5744557e270a38192554c3126ea5f97434Tim Northover
291272062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
291372062f5744557e270a38192554c3126ea5f97434Tim Northover// Logical (shifted register)
291472062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
291572062f5744557e270a38192554c3126ea5f97434Tim Northover        orr w0, w1, #0xffffffff
291672062f5744557e270a38192554c3126ea5f97434Tim Northover        and x3, x5, #0xffffffffffffffff
2917b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected compatible register or logical immediate
291872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         orr w0, w1, #0xffffffff
291972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
2920b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected compatible register or logical immediate
292172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         and x3, x5, #0xffffffffffffffff
292272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
292372062f5744557e270a38192554c3126ea5f97434Tim Northover
292472062f5744557e270a38192554c3126ea5f97434Tim Northover        ands w3, w9, #0x0
292572062f5744557e270a38192554c3126ea5f97434Tim Northover        eor x2, x0, #0x0
2926b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected compatible register or logical immediate
292772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ands w3, w9, #0x0
292872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
2929b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected compatible register or logical immediate
293072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         eor x2, x0, #0x0
293172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
293272062f5744557e270a38192554c3126ea5f97434Tim Northover
293372062f5744557e270a38192554c3126ea5f97434Tim Northover        eor w3, w5, #0x83
293472062f5744557e270a38192554c3126ea5f97434Tim Northover        eor x9, x20, #0x1234
2935b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected compatible register or logical immediate
293672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         eor w3, w5, #0x83
293772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
2938b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected compatible register or logical immediate
293972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         eor x9, x20, #0x1234
294072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
294172062f5744557e270a38192554c3126ea5f97434Tim Northover
294272062f5744557e270a38192554c3126ea5f97434Tim Northover        and wzr, w4, 0xffff0000
294372062f5744557e270a38192554c3126ea5f97434Tim Northover        eor xzr, x9, #0xffff0000ffff0000
294472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
294572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         and wzr, w4, 0xffff0000
294672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
294772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
294872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         eor xzr, x9, #0xffff0000ffff0000
294972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
295072062f5744557e270a38192554c3126ea5f97434Tim Northover
295172062f5744557e270a38192554c3126ea5f97434Tim Northover        orr w3, wsp, #0xf0f0f0f0
295272062f5744557e270a38192554c3126ea5f97434Tim Northover        ands x3, sp, #0xaaaaaaaaaaaaaaaa
295372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
295472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         orr w3, wsp, #0xf0f0f0f0
295572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
295672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
295772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ands x3, sp, #0xaaaaaaaaaaaaaaaa
295872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
295972062f5744557e270a38192554c3126ea5f97434Tim Northover
296072062f5744557e270a38192554c3126ea5f97434Tim Northover        tst sp, #0xe0e0e0e0e0e0e0e0
296172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
296272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tst sp, #0xe0e0e0e0e0e0e0e0
296372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
296472062f5744557e270a38192554c3126ea5f97434Tim Northover
296572062f5744557e270a38192554c3126ea5f97434Tim Northover        // movi has been removed from the specification. Make sure it's really gone.
296672062f5744557e270a38192554c3126ea5f97434Tim Northover        movi wzr, #0x44444444
296772062f5744557e270a38192554c3126ea5f97434Tim Northover        movi w3, #0xffff
296872062f5744557e270a38192554c3126ea5f97434Tim Northover        movi x9, #0x0000ffff00000000
296987773c318fcee853fb34a80a10c4347d523bdafbTim Northover// CHECK-ERROR: error: invalid operand for instruction
297072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movi wzr, #0x44444444
297172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ^
297287773c318fcee853fb34a80a10c4347d523bdafbTim Northover// CHECK-ERROR: error: invalid operand for instruction
297372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movi w3, #0xffff
297472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ^
297587773c318fcee853fb34a80a10c4347d523bdafbTim Northover// CHECK-ERROR: error: invalid operand for instruction
297672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movi x9, #0x0000ffff00000000
297772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ^
297872062f5744557e270a38192554c3126ea5f97434Tim Northover
297972062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
298072062f5744557e270a38192554c3126ea5f97434Tim Northover// Logical (shifted register)
298172062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
298272062f5744557e270a38192554c3126ea5f97434Tim Northover
298372062f5744557e270a38192554c3126ea5f97434Tim Northover        //// Out of range shifts
298472062f5744557e270a38192554c3126ea5f97434Tim Northover        and w2, w24, w6, lsl #-1
298572062f5744557e270a38192554c3126ea5f97434Tim Northover        and w4, w6, w12, lsl #32
298672062f5744557e270a38192554c3126ea5f97434Tim Northover        and x4, x6, x12, lsl #64
298772062f5744557e270a38192554c3126ea5f97434Tim Northover        and x2, x5, x11, asr
298872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: expected integer shift amount
298972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         and w2, w24, w6, lsl #-1
299072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                               ^
2991b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'lsl', 'lsr' or 'asr' with optional integer in range [0, 31]
299272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         and w4, w6, w12, lsl #32
299372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                          ^
2994b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected 'lsl', 'lsr' or 'asr' with optional integer in range [0, 63]
299572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         and x4, x6, x12, lsl #64
299672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                          ^
299772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: expected #imm after shift specifier
299872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         and x2, x5, x11, asr
299972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                             ^
300072062f5744557e270a38192554c3126ea5f97434Tim Northover
300172062f5744557e270a38192554c3126ea5f97434Tim Northover        //// sp not allowed
300272062f5744557e270a38192554c3126ea5f97434Tim Northover        orn wsp, w3, w5
300372062f5744557e270a38192554c3126ea5f97434Tim Northover        bics x20, sp, x9, lsr #0
300472062f5744557e270a38192554c3126ea5f97434Tim Northover        orn x2, x6, sp, lsl #3
3005c6a4f5e819217e1e12c458aed8e7b122e23a3a58Stephen Hines// FIXME: the diagnostic we get for 'orn wsp, w3, w5' is from the orn alias,
3006c6a4f5e819217e1e12c458aed8e7b122e23a3a58Stephen Hines// which is a better match than the genuine ORNWri, whereas it would be better
3007c6a4f5e819217e1e12c458aed8e7b122e23a3a58Stephen Hines// to get the ORNWri diagnostic when the alias did not match, i.e. the
3008c6a4f5e819217e1e12c458aed8e7b122e23a3a58Stephen Hines// alias' diagnostics should have a lower priority.
3009c6a4f5e819217e1e12c458aed8e7b122e23a3a58Stephen Hines// CHECK-ERROR: error: expected compatible register or logical immediate
301072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         orn wsp, w3, w5
3011c6a4f5e819217e1e12c458aed8e7b122e23a3a58Stephen Hines// CHECK-ERROR-NEXT:                      ^
301272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
301372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         bics x20, sp, x9, lsr #0
301472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
3015c6a4f5e819217e1e12c458aed8e7b122e23a3a58Stephen Hines// CHECK-ERROR-NEXT: error: expected compatible register or logical immediate
301672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         orn x2, x6, sp, lsl #3
301772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
301872062f5744557e270a38192554c3126ea5f97434Tim Northover
301972062f5744557e270a38192554c3126ea5f97434Tim Northover        //// Mismatched registers
302072062f5744557e270a38192554c3126ea5f97434Tim Northover        and x3, w2, w1
302172062f5744557e270a38192554c3126ea5f97434Tim Northover        ands w1, x12, w2
302272062f5744557e270a38192554c3126ea5f97434Tim Northover        and x4, x5, w6, lsl #12
302372062f5744557e270a38192554c3126ea5f97434Tim Northover        orr w2, w5, x7, asr #0
302472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
302572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         and x3, w2, w1
302672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
302772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
302872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ands w1, x12, w2
302972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
3030b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected compatible register or logical immediate
303172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         and x4, x5, w6, lsl #12
303272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
3033b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected compatible register or logical immediate
303472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         orr w2, w5, x7, asr #0
303572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
303672062f5744557e270a38192554c3126ea5f97434Tim Northover
303772062f5744557e270a38192554c3126ea5f97434Tim Northover        //// Shifts should not be allowed on mov
303872062f5744557e270a38192554c3126ea5f97434Tim Northover        mov w3, w7, lsl #13
303972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
304072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         mov w3, w7, lsl #13
304172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
304272062f5744557e270a38192554c3126ea5f97434Tim Northover
304372062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
304472062f5744557e270a38192554c3126ea5f97434Tim Northover// Move wide (immediate)
304572062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
304672062f5744557e270a38192554c3126ea5f97434Tim Northover
304772062f5744557e270a38192554c3126ea5f97434Tim Northover        movz w3, #65536, lsl #0
304872062f5744557e270a38192554c3126ea5f97434Tim Northover        movz w4, #65536
304972062f5744557e270a38192554c3126ea5f97434Tim Northover        movn w1, #2, lsl #1
305072062f5744557e270a38192554c3126ea5f97434Tim Northover        movk w3, #0, lsl #-1
305172062f5744557e270a38192554c3126ea5f97434Tim Northover        movn w2, #-1, lsl #0
305272062f5744557e270a38192554c3126ea5f97434Tim Northover        movz x3, #-1
305372062f5744557e270a38192554c3126ea5f97434Tim Northover        movk w3, #1, lsl #32
305472062f5744557e270a38192554c3126ea5f97434Tim Northover        movn x2, #12, lsl #64
3055dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR: error: {{expected relocated symbol or|immediate must be an}} integer in range [0, 65535]
305672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movz w3, #65536, lsl #0
305772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
3058dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected relocated symbol or|immediate must be an}} integer in range [0, 65535]
305972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movz w4, #65536
306072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
3061dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT: error: expected relocated symbol or integer in range [0, 65535]
3062dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-ARM64-NEXT: error: expected 'lsl' with optional integer 0 or 16
306372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movn w1, #2, lsl #1
306472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
3065dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT: error: only 'lsl #+N' valid after immediate
3066dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-ARM64-NEXT: error: expected integer shift amount
306772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movk w3, #0, lsl #-1
306872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
3069dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected relocated symbol or|immediate must be an}} integer in range [0, 65535]
307072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movn w2, #-1, lsl #0
307172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
3072dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected relocated symbol or|immediate must be an}} integer in range [0, 65535]
307372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movz x3, #-1
307472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
3075dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT: error: expected relocated symbol or integer in range [0, 65535]
3076dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-ARM64-NEXT: error: expected 'lsl' with optional integer 0 or 16
307772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movk w3, #1, lsl #32
307872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
3079dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT: error: expected relocated symbol or integer in range [0, 65535]
3080dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-ARM64-NEXT: error: expected 'lsl' with optional integer 0, 16, 32 or 48
308172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movn x2, #12, lsl #64
308272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
308372062f5744557e270a38192554c3126ea5f97434Tim Northover
308472062f5744557e270a38192554c3126ea5f97434Tim Northover        movz x12, #:abs_g0:sym, lsl #16
308572062f5744557e270a38192554c3126ea5f97434Tim Northover        movz x12, #:abs_g0:sym, lsl #0
308672062f5744557e270a38192554c3126ea5f97434Tim Northover        movn x2, #:abs_g0:sym
308772062f5744557e270a38192554c3126ea5f97434Tim Northover        movk w3, #:abs_g0:sym
308872062f5744557e270a38192554c3126ea5f97434Tim Northover        movz x3, #:abs_g0_nc:sym
308972062f5744557e270a38192554c3126ea5f97434Tim Northover        movn x4, #:abs_g0_nc:sym
3090dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR: error: {{expected relocated symbol or|immediate must be an}} integer in range [0, 65535]
309172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movz x12, #:abs_g0:sym, lsl #16
309272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                                 ^
3093dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected relocated symbol or|immediate must be an}} integer in range [0, 65535]
309472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movz x12, #:abs_g0:sym, lsl #0
309572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                                 ^
3096dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT: error: {{expected relocated symbol or|immediate must be an}} integer in range [0, 65535]
3097dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT:         movn x2, #:abs_g0:sym
3098dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT:                  ^
3099dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected relocated symbol or|immediate must be an}} integer in range [0, 65535]
310072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movk w3, #:abs_g0:sym
310172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
3102dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected relocated symbol or|immediate must be an}} integer in range [0, 65535]
310372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movz x3, #:abs_g0_nc:sym
310472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
3105dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected relocated symbol or|immediate must be an}} integer in range [0, 65535]
310672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movn x4, #:abs_g0_nc:sym
310772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
310872062f5744557e270a38192554c3126ea5f97434Tim Northover
310972062f5744557e270a38192554c3126ea5f97434Tim Northover        movn x2, #:abs_g1:sym
311072062f5744557e270a38192554c3126ea5f97434Tim Northover        movk w3, #:abs_g1:sym
311172062f5744557e270a38192554c3126ea5f97434Tim Northover        movz x3, #:abs_g1_nc:sym
311272062f5744557e270a38192554c3126ea5f97434Tim Northover        movn x4, #:abs_g1_nc:sym
3113dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64: error: {{expected relocated symbol or|immediate must be an}} integer in range [0, 65535]
3114dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT:         movn x2, #:abs_g1:sym
3115dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT:                  ^
3116dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected relocated symbol or|immediate must be an}} integer in range [0, 65535]
311772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movk w3, #:abs_g1:sym
311872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
3119dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected relocated symbol or|immediate must be an}} integer in range [0, 65535]
312072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movz x3, #:abs_g1_nc:sym
312172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
3122dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected relocated symbol or|immediate must be an}} integer in range [0, 65535]
312372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movn x4, #:abs_g1_nc:sym
312472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
312572062f5744557e270a38192554c3126ea5f97434Tim Northover
312672062f5744557e270a38192554c3126ea5f97434Tim Northover        movz w12, #:abs_g2:sym
312772062f5744557e270a38192554c3126ea5f97434Tim Northover        movn x12, #:abs_g2:sym
312872062f5744557e270a38192554c3126ea5f97434Tim Northover        movk x13, #:abs_g2:sym
312972062f5744557e270a38192554c3126ea5f97434Tim Northover        movk w3, #:abs_g2_nc:sym
313072062f5744557e270a38192554c3126ea5f97434Tim Northover        movz x13, #:abs_g2_nc:sym
313172062f5744557e270a38192554c3126ea5f97434Tim Northover        movn x24, #:abs_g2_nc:sym
3132dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR: error: {{expected relocated symbol or|immediate must be an}} integer in range [0, 65535]
313372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movz w12, #:abs_g2:sym
313472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
3135dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT: error: {{expected relocated symbol or|immediate must be an}} integer in range [0, 65535]
3136dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT:         movn x12, #:abs_g2:sym
3137dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT:                   ^
3138dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected relocated symbol or|immediate must be an}} integer in range [0, 65535]
313972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movk x13, #:abs_g2:sym
314072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
3141dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected relocated symbol or|immediate must be an}} integer in range [0, 65535]
314272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movk w3, #:abs_g2_nc:sym
314372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
3144dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected relocated symbol or|immediate must be an}} integer in range [0, 65535]
314572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movz x13, #:abs_g2_nc:sym
314672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
3147dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected relocated symbol or|immediate must be an}} integer in range [0, 65535]
314872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movn x24, #:abs_g2_nc:sym
314972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
315072062f5744557e270a38192554c3126ea5f97434Tim Northover
315172062f5744557e270a38192554c3126ea5f97434Tim Northover        movn x19, #:abs_g3:sym
315272062f5744557e270a38192554c3126ea5f97434Tim Northover        movz w20, #:abs_g3:sym
315372062f5744557e270a38192554c3126ea5f97434Tim Northover        movk w21, #:abs_g3:sym
3154dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64: error: {{expected relocated symbol or|immediate must be an}} integer in range [0, 65535]
3155dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT:         movn x19, #:abs_g3:sym
3156dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT:                   ^
3157dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected relocated symbol or|immediate must be an}} integer in range [0, 65535]
315872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movz w20, #:abs_g3:sym
315972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
3160dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected relocated symbol or|immediate must be an}} integer in range [0, 65535]
316172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movk w21, #:abs_g3:sym
316272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
316372062f5744557e270a38192554c3126ea5f97434Tim Northover
316472062f5744557e270a38192554c3126ea5f97434Tim Northover        movk x19, #:abs_g0_s:sym
316572062f5744557e270a38192554c3126ea5f97434Tim Northover        movk w23, #:abs_g0_s:sym
3166dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR: error: {{expected relocated symbol or|immediate must be an}} integer in range [0, 65535]
316772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movk x19, #:abs_g0_s:sym
316872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
3169dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected relocated symbol or|immediate must be an}} integer in range [0, 65535]
317072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movk w23, #:abs_g0_s:sym
317172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
317272062f5744557e270a38192554c3126ea5f97434Tim Northover
317372062f5744557e270a38192554c3126ea5f97434Tim Northover        movk x19, #:abs_g1_s:sym
317472062f5744557e270a38192554c3126ea5f97434Tim Northover        movk w23, #:abs_g1_s:sym
3175dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR: error: {{expected relocated symbol or|immediate must be an}} integer in range [0, 65535]
317672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movk x19, #:abs_g1_s:sym
317772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
3178dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected relocated symbol or|immediate must be an}} integer in range [0, 65535]
317972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movk w23, #:abs_g1_s:sym
318072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
318172062f5744557e270a38192554c3126ea5f97434Tim Northover
318272062f5744557e270a38192554c3126ea5f97434Tim Northover        movz w2, #:abs_g2_s:sym
318372062f5744557e270a38192554c3126ea5f97434Tim Northover        movn w29, #:abs_g2_s:sym
318472062f5744557e270a38192554c3126ea5f97434Tim Northover        movk x19, #:abs_g2_s:sym
318572062f5744557e270a38192554c3126ea5f97434Tim Northover        movk w23, #:abs_g2_s:sym
3186dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR: error: {{expected relocated symbol or|immediate must be an}} integer in range [0, 65535]
318772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movz w2, #:abs_g2_s:sym
318872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                    ^
3189dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected relocated symbol or|immediate must be an}} integer in range [0, 65535]
319072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movn w29, #:abs_g2_s:sym
319172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
3192dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected relocated symbol or|immediate must be an}} integer in range [0, 65535]
319372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movk x19, #:abs_g2_s:sym
319472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
3195dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected relocated symbol or|immediate must be an}} integer in range [0, 65535]
319672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         movk w23, #:abs_g2_s:sym
319772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
319872062f5744557e270a38192554c3126ea5f97434Tim Northover
319972062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
320072062f5744557e270a38192554c3126ea5f97434Tim Northover// PC-relative addressing
320172062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
320272062f5744557e270a38192554c3126ea5f97434Tim Northover
320372062f5744557e270a38192554c3126ea5f97434Tim Northover        adr sp, loc             // expects xzr
320472062f5744557e270a38192554c3126ea5f97434Tim Northover        adrp x3, #20            // Immediate unaligned
320572062f5744557e270a38192554c3126ea5f97434Tim Northover        adrp w2, loc            // 64-bit register needed
320672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
320772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         adr sp, loc
320872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3209b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected label or encodable integer pc offset
321072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         adrp x3, #20
321172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
321272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
321372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         adrp w2, loc
321472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
321572062f5744557e270a38192554c3126ea5f97434Tim Northover
321672062f5744557e270a38192554c3126ea5f97434Tim Northover        adr x9, #1048576
321772062f5744557e270a38192554c3126ea5f97434Tim Northover        adr x2, #-1048577
321872062f5744557e270a38192554c3126ea5f97434Tim Northover        adrp x9, #4294967296
321972062f5744557e270a38192554c3126ea5f97434Tim Northover        adrp x20, #-4294971392
3220b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected label or encodable integer pc offset
322172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         adr x9, #1048576
322272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
3223b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected label or encodable integer pc offset
322472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         adr x2, #-1048577
322572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
3226b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected label or encodable integer pc offset
322772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         adrp x9, #4294967296
322872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
3229b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected label or encodable integer pc offset
323072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         adrp x20, #-4294971392
323172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
323272062f5744557e270a38192554c3126ea5f97434Tim Northover
323372062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
323472062f5744557e270a38192554c3126ea5f97434Tim Northover// System
323572062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
323672062f5744557e270a38192554c3126ea5f97434Tim Northover
323772062f5744557e270a38192554c3126ea5f97434Tim Northover        hint #-1
323872062f5744557e270a38192554c3126ea5f97434Tim Northover        hint #128
3239dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR: error: {{expected|immediate must be an}} integer in range [0, 127]
324072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         hint #-1
324172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
3242dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 127]
324372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         hint #128
324472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
324572062f5744557e270a38192554c3126ea5f97434Tim Northover
324672062f5744557e270a38192554c3126ea5f97434Tim Northover        clrex #-1
324772062f5744557e270a38192554c3126ea5f97434Tim Northover        clrex #16
3248dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
324972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         clrex #-1
325072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:               ^
3251dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
325272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         clrex #16
325372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:               ^
325472062f5744557e270a38192554c3126ea5f97434Tim Northover
325572062f5744557e270a38192554c3126ea5f97434Tim Northover        dsb #-1
325672062f5744557e270a38192554c3126ea5f97434Tim Northover        dsb #16
325772062f5744557e270a38192554c3126ea5f97434Tim Northover        dmb #-1
325872062f5744557e270a38192554c3126ea5f97434Tim Northover        dmb #16
3259dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{Invalid immediate for instruction|barrier operand out of range}}
326072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         dsb #-1
326172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3262dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{Invalid immediate for instruction|barrier operand out of range}}
326372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         dsb #16
326472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3265dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{Invalid immediate for instruction|barrier operand out of range}}
326672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         dmb #-1
326772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3268dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{Invalid immediate for instruction|barrier operand out of range}}
326972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         dmb #16
327072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
327172062f5744557e270a38192554c3126ea5f97434Tim Northover
327272062f5744557e270a38192554c3126ea5f97434Tim Northover        isb #-1
327372062f5744557e270a38192554c3126ea5f97434Tim Northover        isb #16
3274dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{Invalid immediate for instruction|barrier operand out of range}}
327572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         isb #-1
327672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3277dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{Invalid immediate for instruction|barrier operand out of range}}
327872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         isb #16
327972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
328072062f5744557e270a38192554c3126ea5f97434Tim Northover
328172062f5744557e270a38192554c3126ea5f97434Tim Northover        msr daifset, x4
3282b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover        msr spsel, #-1
328372062f5744557e270a38192554c3126ea5f97434Tim Northover        msr spsel #-1
328472062f5744557e270a38192554c3126ea5f97434Tim Northover        msr daifclr, #16
3285dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
328672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr daifset, x4
328772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
3288dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
3289b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT:         msr spsel, #-1
3290b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT:                    ^
3291dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected comma before next operand|unexpected token in argument list}}
329272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr spsel #-1
329372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
3294dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 15]
329572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr daifclr, #16
329672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
329772062f5744557e270a38192554c3126ea5f97434Tim Northover
329872062f5744557e270a38192554c3126ea5f97434Tim Northover        sys #8, c1, c2, #7, x9
329972062f5744557e270a38192554c3126ea5f97434Tim Northover        sys #3, c16, c2, #3, x10
330072062f5744557e270a38192554c3126ea5f97434Tim Northover        sys #2, c11, c16, #5
330172062f5744557e270a38192554c3126ea5f97434Tim Northover        sys #4, c9, c8, #8, xzr
330272062f5744557e270a38192554c3126ea5f97434Tim Northover        sysl x11, #8, c1, c2, #7
330372062f5744557e270a38192554c3126ea5f97434Tim Northover        sysl x13, #3, c16, c2, #3
330472062f5744557e270a38192554c3126ea5f97434Tim Northover        sysl x9, #2, c11, c16, #5
330572062f5744557e270a38192554c3126ea5f97434Tim Northover        sysl x4, #4, c9, c8, #8
3306dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error:  {{expected|immediate must be an}} integer in range [0, 7]
330772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sys #8, c1, c2, #7, x9
330872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
330972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: Expected cN operand where 0 <= N <= 15
331072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sys #3, c16, c2, #3, x10
331172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
331272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: Expected cN operand where 0 <= N <= 15
331372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sys #2, c11, c16, #5
331472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                      ^
3315dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 7]
331672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sys #4, c9, c8, #8, xzr
331772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
3318dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 7]
331972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sysl x11, #8, c1, c2, #7
332072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                   ^
332172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: Expected cN operand where 0 <= N <= 15
332272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sysl x13, #3, c16, c2, #3
332372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
332472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: Expected cN operand where 0 <= N <= 15
332572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sysl x9, #2, c11, c16, #5
332672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                           ^
3327dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 7]
332872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         sysl x4, #4, c9, c8, #8
332972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                              ^
333072062f5744557e270a38192554c3126ea5f97434Tim Northover
333172062f5744557e270a38192554c3126ea5f97434Tim Northover        ic ialluis, x2
333272062f5744557e270a38192554c3126ea5f97434Tim Northover        ic allu, x7
333372062f5744557e270a38192554c3126ea5f97434Tim Northover        ic ivau
3334dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: specified {{IC|ic}} op does not use a register
333572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ic ialluis, x2
333672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
3337dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-AARCH64-NEXT: error: operand specifier not recognised
3338dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-ARM64-NEXT: error: invalid operand for IC instruction
333972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ic allu, x7
334072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:            ^
3341dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: specified {{IC|ic}} op requires a register
334272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         ic ivau
334372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:            ^
334472062f5744557e270a38192554c3126ea5f97434Tim Northover
334572062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi IPAS2E1IS
334672062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi IPAS2LE1IS
334772062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi VMALLE1IS, x12
334872062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi ALLE2IS, x11
334972062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi ALLE3IS, x20
335072062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi VAE1IS
335172062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi VAE2IS
335272062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi VAE3IS
335372062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi ASIDE1IS
335472062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi VAAE1IS
335572062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi ALLE1IS, x0
335672062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi VALE1IS
335772062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi VALE2IS
335872062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi VALE3IS
335972062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi VMALLS12E1IS, xzr
336072062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi VAALE1IS
336172062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi IPAS2E1
336272062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi IPAS2LE1
336372062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi VMALLE1, x9
336472062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi ALLE2, x10
336572062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi ALLE3, x11
336672062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi VAE1
336772062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi VAE2
336872062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi VAE3
336972062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi ASIDE1
337072062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi VAAE1
337172062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi ALLE1, x25
337272062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi VALE1
337372062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi VALE2
337472062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi VALE3
337572062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi VMALLS12E1, x15
337672062f5744557e270a38192554c3126ea5f97434Tim Northover        tlbi VAALE1
3377dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op requires a register
337872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi IPAS2E1IS
337972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
3380dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op requires a register
338172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi IPAS2LE1IS
338272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
3383dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op does not use a register
338472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi VMALLE1IS, x12
338572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                         ^
3386dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op does not use a register
338772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi ALLE2IS, x11
338872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
3389dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op does not use a register
339072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi ALLE3IS, x20
339172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
3392dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op requires a register
339372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi VAE1IS
339472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
3395dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op requires a register
339672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi VAE2IS
339772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
3398dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op requires a register
339972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi VAE3IS
340072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
3401dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op requires a register
340272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi ASIDE1IS
340372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
3404dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op requires a register
340572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi VAAE1IS
340672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
3407dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op does not use a register
340872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi ALLE1IS, x0
340972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
3410dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op requires a register
341172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi VALE1IS
341272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
3413dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op requires a register
341472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi VALE2IS
341572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
3416dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op requires a register
341772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi VALE3IS
341872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
3419dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op does not use a register
342072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi VMALLS12E1IS, xzr
342172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                            ^
3422dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op requires a register
342372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi VAALE1IS
342472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
3425dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op requires a register
342672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi IPAS2E1
342772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
3428dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op requires a register
342972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi IPAS2LE1
343072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
3431dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op does not use a register
343272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi VMALLE1, x9
343372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                       ^
3434dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op does not use a register
343572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi ALLE2, x10
343672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
3437dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op does not use a register
343872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi ALLE3, x11
343972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
3440dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op requires a register
344172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi VAE1
344272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
3443dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op requires a register
344472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi VAE2
344572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
3446dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op requires a register
344772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi VAE3
344872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
3449dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op requires a register
345072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi ASIDE1
345172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
3452dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op requires a register
345372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi VAAE1
345472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
3455dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op does not use a register
345672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi ALLE1, x25
345772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                     ^
3458dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op requires a register
345972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi VALE1
346072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
3461dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op requires a register
346272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi VALE2
346372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
3464dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op requires a register
346572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi VALE3
346672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
3467dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op does not use a register
346872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi VMALLS12E1, x15
346972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                          ^
3470dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: specified {{TLBI|tlbi}} op requires a register
347172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         tlbi VAALE1
347272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
347372062f5744557e270a38192554c3126ea5f97434Tim Northover
347472062f5744557e270a38192554c3126ea5f97434Tim Northover// For the MSR/MRS instructions, first make sure read-only and
347572062f5744557e270a38192554c3126ea5f97434Tim Northover// write-only registers actually are.
347672062f5744557e270a38192554c3126ea5f97434Tim Northover        msr MDCCSR_EL0, x12
347772062f5744557e270a38192554c3126ea5f97434Tim Northover        msr DBGDTRRX_EL0, x12
347872062f5744557e270a38192554c3126ea5f97434Tim Northover        msr MDRAR_EL1, x12
347972062f5744557e270a38192554c3126ea5f97434Tim Northover        msr OSLSR_EL1, x12
348072062f5744557e270a38192554c3126ea5f97434Tim Northover        msr DBGAUTHSTATUS_EL1, x12
348172062f5744557e270a38192554c3126ea5f97434Tim Northover        msr MIDR_EL1, x12
348272062f5744557e270a38192554c3126ea5f97434Tim Northover        msr CCSIDR_EL1, x12
348372062f5744557e270a38192554c3126ea5f97434Tim Northover        msr CLIDR_EL1, x12
348472062f5744557e270a38192554c3126ea5f97434Tim Northover        msr CTR_EL0, x12
348572062f5744557e270a38192554c3126ea5f97434Tim Northover        msr MPIDR_EL1, x12
348672062f5744557e270a38192554c3126ea5f97434Tim Northover        msr REVIDR_EL1, x12
348772062f5744557e270a38192554c3126ea5f97434Tim Northover        msr AIDR_EL1, x12
348872062f5744557e270a38192554c3126ea5f97434Tim Northover        msr DCZID_EL0, x12
348972062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ID_PFR0_EL1, x12
349072062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ID_PFR1_EL1, x12
349172062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ID_DFR0_EL1, x12
349272062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ID_AFR0_EL1, x12
349372062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ID_MMFR0_EL1, x12
349472062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ID_MMFR1_EL1, x12
349572062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ID_MMFR2_EL1, x12
349672062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ID_MMFR3_EL1, x12
34976948897e478cbd66626159776a8017b3c18579b9Pirama Arumuga Nainar        msr ID_MMFR4_EL1, x12
349872062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ID_ISAR0_EL1, x12
349972062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ID_ISAR1_EL1, x12
350072062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ID_ISAR2_EL1, x12
350172062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ID_ISAR3_EL1, x12
350272062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ID_ISAR4_EL1, x12
350372062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ID_ISAR5_EL1, x12
350472062f5744557e270a38192554c3126ea5f97434Tim Northover        msr MVFR0_EL1, x12
350572062f5744557e270a38192554c3126ea5f97434Tim Northover        msr MVFR1_EL1, x12
350672062f5744557e270a38192554c3126ea5f97434Tim Northover        msr MVFR2_EL1, x12
350772062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ID_AA64PFR0_EL1, x12
350872062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ID_AA64PFR1_EL1, x12
350972062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ID_AA64DFR0_EL1, x12
351072062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ID_AA64DFR1_EL1, x12
351172062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ID_AA64AFR0_EL1, x12
351272062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ID_AA64AFR1_EL1, x12
351372062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ID_AA64ISAR0_EL1, x12
351472062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ID_AA64ISAR1_EL1, x12
351572062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ID_AA64MMFR0_EL1, x12
351672062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ID_AA64MMFR1_EL1, x12
351772062f5744557e270a38192554c3126ea5f97434Tim Northover        msr PMCEID0_EL0, x12
351872062f5744557e270a38192554c3126ea5f97434Tim Northover        msr PMCEID1_EL0, x12
351972062f5744557e270a38192554c3126ea5f97434Tim Northover        msr RVBAR_EL1, x12
352072062f5744557e270a38192554c3126ea5f97434Tim Northover        msr RVBAR_EL2, x12
352172062f5744557e270a38192554c3126ea5f97434Tim Northover        msr RVBAR_EL3, x12
352272062f5744557e270a38192554c3126ea5f97434Tim Northover        msr ISR_EL1, x12
352372062f5744557e270a38192554c3126ea5f97434Tim Northover        msr CNTPCT_EL0, x12
352472062f5744557e270a38192554c3126ea5f97434Tim Northover        msr CNTVCT_EL0, x12
352572062f5744557e270a38192554c3126ea5f97434Tim Northover        msr PMEVCNTR31_EL0, x12
352672062f5744557e270a38192554c3126ea5f97434Tim Northover        msr PMEVTYPER31_EL0, x12
3527b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected writable system register or pstate
352872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr MDCCSR_EL0, x12
352972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3530b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
353172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr DBGDTRRX_EL0, x12
353272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3533b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
353472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr MDRAR_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 OSLSR_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 DBGAUTHSTATUS_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 MIDR_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 CCSIDR_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 CLIDR_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 CTR_EL0, x12
355372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3554b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
355572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr MPIDR_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 REVIDR_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 AIDR_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 DCZID_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 ID_PFR0_EL1, x12
356872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3569b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
357072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr ID_PFR1_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 ID_DFR0_EL1, x12
357472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3575b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
357672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr ID_AFR0_EL1, x12
357772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3578b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
357972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr ID_MMFR0_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 ID_MMFR1_EL1, x12
358372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3584b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
358572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr ID_MMFR2_EL1, x12
358672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3587b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
358872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr ID_MMFR3_EL1, x12
358972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3590b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
35916948897e478cbd66626159776a8017b3c18579b9Pirama Arumuga Nainar// CHECK-ERROR-NEXT:         msr ID_MMFR4_EL1, x12
35926948897e478cbd66626159776a8017b3c18579b9Pirama Arumuga Nainar// CHECK-ERROR-NEXT:             ^
35936948897e478cbd66626159776a8017b3c18579b9Pirama Arumuga Nainar// CHECK-ERROR-NEXT: error: expected writable system register or pstate
359472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr ID_ISAR0_EL1, x12
359572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3596b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
359772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr ID_ISAR1_EL1, x12
359872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3599b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
360072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr ID_ISAR2_EL1, x12
360172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3602b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
360372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr ID_ISAR3_EL1, x12
360472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3605b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
360672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr ID_ISAR4_EL1, x12
360772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3608b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
360972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr ID_ISAR5_EL1, x12
361072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3611b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
361272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr MVFR0_EL1, x12
361372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3614b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
361572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr MVFR1_EL1, x12
361672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3617b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
361872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr MVFR2_EL1, x12
361972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3620b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
362172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr ID_AA64PFR0_EL1, x12
362272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3623b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
362472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr ID_AA64PFR1_EL1, x12
362572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3626b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
362772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr ID_AA64DFR0_EL1, x12
362872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3629b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
363072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr ID_AA64DFR1_EL1, x12
363172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3632b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
363372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr ID_AA64AFR0_EL1, x12
363472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3635b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
363672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr ID_AA64AFR1_EL1, x12
363772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3638b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
363972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr ID_AA64ISAR0_EL1, x12
364072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3641b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
364272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr ID_AA64ISAR1_EL1, x12
364372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3644b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
364572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr ID_AA64MMFR0_EL1, x12
364672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3647b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
364872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr ID_AA64MMFR1_EL1, x12
364972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3650b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
365172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr PMCEID0_EL0, x12
365272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3653b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
365472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr PMCEID1_EL0, x12
365572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3656b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
365772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr RVBAR_EL1, x12
365872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3659b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
366072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr RVBAR_EL2, x12
366172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3662b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
366372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr RVBAR_EL3, x12
366472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3665b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
366672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr ISR_EL1, x12
366772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3668b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
366972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr CNTPCT_EL0, x12
367072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3671b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
367272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr CNTVCT_EL0, x12
367372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3674b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
367572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr PMEVCNTR31_EL0, x12
367672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3677b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected writable system register or pstate
367872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         msr PMEVTYPER31_EL0, x12
367972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
368072062f5744557e270a38192554c3126ea5f97434Tim Northover
368172062f5744557e270a38192554c3126ea5f97434Tim Northover        mrs x9, DBGDTRTX_EL0
368272062f5744557e270a38192554c3126ea5f97434Tim Northover        mrs x9, OSLAR_EL1
368372062f5744557e270a38192554c3126ea5f97434Tim Northover        mrs x9, PMSWINC_EL0
368472062f5744557e270a38192554c3126ea5f97434Tim Northover        mrs x9, PMEVCNTR31_EL0
368572062f5744557e270a38192554c3126ea5f97434Tim Northover        mrs x9, PMEVTYPER31_EL0
3686b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected readable system register
368772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         mrs x9, DBGDTRTX_EL0
368872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
3689b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected readable system register
369072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         mrs x9, OSLAR_EL1
369172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
3692b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected readable system register
369372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         mrs x9, PMSWINC_EL0
369472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
3695b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected readable system register
369672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         mrs x9, PMEVCNTR31_EL0
369772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
3698b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected readable system register
369972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         mrs x9, PMEVTYPER31_EL0
370072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
370172062f5744557e270a38192554c3126ea5f97434Tim Northover
370272062f5744557e270a38192554c3126ea5f97434Tim Northover// Now check some invalid generic names
370372062f5744557e270a38192554c3126ea5f97434Tim Northover        mrs x12, s3_8_c11_c13_2
370472062f5744557e270a38192554c3126ea5f97434Tim Northover        mrs x19, s3_2_c15_c16_2
370572062f5744557e270a38192554c3126ea5f97434Tim Northover        mrs x30, s3_2_c15_c1_8
370637ed9c199ca639565f6ce88105f9e39e898d82d0Stephen Hines        mrs x4, s4_7_c15_c15_7
370737ed9c199ca639565f6ce88105f9e39e898d82d0Stephen Hines        mrs x14, s3_7_c16_c15_7
3708b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected readable system register
370972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         mrs x12, s3_8_c11_c13_2
371072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
3711b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected readable system register
371272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         mrs x19, s3_2_c15_c16_2
371372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
3714b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected readable system register
371572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         mrs x30, s3_2_c15_c1_8
371672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                  ^
371737ed9c199ca639565f6ce88105f9e39e898d82d0Stephen Hines// CHECK-ERROR-NEXT: error: expected readable system register
371837ed9c199ca639565f6ce88105f9e39e898d82d0Stephen Hines// CHECK-ERROR-NEXT:         mrs x4, s4_7_c15_c15_7
371937ed9c199ca639565f6ce88105f9e39e898d82d0Stephen Hines// CHECK-ERROR-NEXT:                 ^
372037ed9c199ca639565f6ce88105f9e39e898d82d0Stephen Hines// CHECK-ERROR-NEXT: error: expected readable system register
372137ed9c199ca639565f6ce88105f9e39e898d82d0Stephen Hines// CHECK-ERROR-NEXT:         mrs x14, s3_7_c16_c15_7
372237ed9c199ca639565f6ce88105f9e39e898d82d0Stephen Hines// CHECK-ERROR-NEXT:                  ^
372372062f5744557e270a38192554c3126ea5f97434Tim Northover
372472062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
372572062f5744557e270a38192554c3126ea5f97434Tim Northover// Test and branch (immediate)
372672062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
372772062f5744557e270a38192554c3126ea5f97434Tim Northover
372872062f5744557e270a38192554c3126ea5f97434Tim Northover        tbz w3, #-1, addr
372972062f5744557e270a38192554c3126ea5f97434Tim Northover        tbz w3, #32, nowhere
373072062f5744557e270a38192554c3126ea5f97434Tim Northover        tbz x9, #-1, there
373172062f5744557e270a38192554c3126ea5f97434Tim Northover        tbz x20, #64, dont
3732dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR: error: {{expected|immediate must be an}} integer in range [0, 31]
373372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:     tbz w3, #-1, addr
373472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:             ^
3735dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
373672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        tbz w3, #32, nowhere
373772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                ^
3738dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 63]
373972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        tbz x9, #-1, there
374072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                ^
3741dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 63]
374272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        tbz x20, #64, dont
374372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
374472062f5744557e270a38192554c3126ea5f97434Tim Northover
374572062f5744557e270a38192554c3126ea5f97434Tim Northover        tbnz w3, #-1, addr
374672062f5744557e270a38192554c3126ea5f97434Tim Northover        tbnz w3, #32, nowhere
374772062f5744557e270a38192554c3126ea5f97434Tim Northover        tbnz x9, #-1, there
374872062f5744557e270a38192554c3126ea5f97434Tim Northover        tbnz x20, #64, dont
3749dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
375072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        tbnz w3, #-1, addr
375172062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
3752dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 31]
375372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        tbnz w3, #32, nowhere
375472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
3755dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 63]
375672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        tbnz x9, #-1, there
375772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:                 ^
3758dce4a407a24b04eebc6a376f8e62b41aaa7b071fStephen Hines// CHECK-ERROR-NEXT: error: {{expected|immediate must be an}} integer in range [0, 63]
375972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:        tbnz x20, #64, dont
376072062f5744557e270a38192554c3126ea5f97434Tim Northover
376172062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
376272062f5744557e270a38192554c3126ea5f97434Tim Northover// Unconditional branch (immediate)
376372062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
376472062f5744557e270a38192554c3126ea5f97434Tim Northover
376572062f5744557e270a38192554c3126ea5f97434Tim Northover        b #134217728
376672062f5744557e270a38192554c3126ea5f97434Tim Northover        b #-134217732
376772062f5744557e270a38192554c3126ea5f97434Tim Northover        b #1
3768b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR: error: expected label or encodable integer pc offset
376972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         b #134217728
377072062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:           ^
3771b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected label or encodable integer pc offset
377272062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         b #-134217732
377372062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:           ^
3774b5161863866b64498a7faa20e612c55de4bca6f8Tim Northover// CHECK-ERROR-NEXT: error: expected label or encodable integer pc offset
377572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         b #1
377672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:           ^
377772062f5744557e270a38192554c3126ea5f97434Tim Northover
377872062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
377972062f5744557e270a38192554c3126ea5f97434Tim Northover// Unconditional branch (register)
378072062f5744557e270a38192554c3126ea5f97434Tim Northover//------------------------------------------------------------------------------
378172062f5744557e270a38192554c3126ea5f97434Tim Northover
378272062f5744557e270a38192554c3126ea5f97434Tim Northover        br w2
378372062f5744557e270a38192554c3126ea5f97434Tim Northover        br sp
378472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
378572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         br w2
378672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:            ^
378772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
378872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         br sp
378972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:            ^
379072062f5744557e270a38192554c3126ea5f97434Tim Northover
379172062f5744557e270a38192554c3126ea5f97434Tim Northover        //// These ones shouldn't allow any registers
379272062f5744557e270a38192554c3126ea5f97434Tim Northover        eret x2
379372062f5744557e270a38192554c3126ea5f97434Tim Northover        drps x2
379472062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR: error: invalid operand for instruction
379572062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         eret x2
379672062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
379772062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT: error: invalid operand for instruction
379872062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:         drps x2
379972062f5744557e270a38192554c3126ea5f97434Tim Northover// CHECK-ERROR-NEXT:              ^
380072062f5744557e270a38192554c3126ea5f97434Tim Northover
3801