1// RUN: not llvm-mc -triple arm64 -mattr=neon -show-encoding < %s 2>%t | FileCheck %s
2// RUN: FileCheck --check-prefix=CHECK-ERRORS < %t %s
3
4    ST4     {v0.8B-v3.8B}, [x0]
5    ST4     {v0.4H-v3.4H}, [x0]
6
7// CHECK: st4  { v0.8b, v1.8b, v2.8b, v3.8b }, [x0] // encoding: [0x00,0x00,0x00,0x0c]
8// CHECK: st4  { v0.4h, v1.4h, v2.4h, v3.4h }, [x0] // encoding: [0x00,0x04,0x00,0x0c]
9
10    ST4     {v0.8B-v4.8B}, [x0]
11    ST4     {v0.8B-v3.8B,v4.8B}, [x0]
12    ST4     {v0.8B-v3.8H}, [x0]
13    ST4     {v0.8B-v3.16B}, [x0]
14    ST4     {v0.8B-},[x0]
15
16// CHECK-ERRORS: error: invalid number of vectors
17// CHECK-ERRORS: error: '}' expected
18// CHECK-ERRORS: error: mismatched register size suffix
19// CHECK-ERRORS: error: mismatched register size suffix
20// CHECK-ERRORS: error: vector register expected
21