1 # RUN: llvm-mc -triple aarch64-none-linux-gnu -mattr=+v8.5a --disassemble < %s | FileCheck %s
2 # RUN: not llvm-mc -triple aarch64-none-linux-gnu -mattr=-v8.5a --disassemble < %s 2>%t | FileCheck %s --check-prefix=CHECK-NOV85
3 # RUN: FileCheck %s --check-prefix=CHECK-NOV85-ERROR < %t
12 # CHECK-NOV85: msr S0_0_C4_C0_1, xzr
13 # CHECK-NOV85: msr S0_0_C4_C0_2, xzr
15 # FP-to-int rounding, scalar
25 # CHECK: frint32z s0, s1
26 # CHECK: frint32z d0, d1
27 # CHECK: frint64z s2, s3
28 # CHECK: frint64z d2, d3
29 # CHECK: frint32x s4, s5
30 # CHECK: frint32x d4, d5
31 # CHECK: frint64x s6, s7
32 # CHECK: frint64x d6, d7
34 # CHECK-NOV85-ERROR: invalid instruction encoding
35 # CHECK-NOV85-ERROR-NEXT: [0x20,0x40,0x28,0x1e]
36 # CHECK-NOV85-ERROR: invalid instruction encoding
37 # CHECK-NOV85-ERROR-NEXT: [0x20,0x40,0x68,0x1e]
38 # CHECK-NOV85-ERROR: invalid instruction encoding
39 # CHECK-NOV85-ERROR-NEXT: [0x62,0x40,0x29,0x1e]
40 # CHECK-NOV85-ERROR: invalid instruction encoding
41 # CHECK-NOV85-ERROR-NEXT: [0x62,0x40,0x69,0x1e]
42 # CHECK-NOV85-ERROR: invalid instruction encoding
43 # CHECK-NOV85-ERROR-NEXT: [0xa4,0xc0,0x28,0x1e]
44 # CHECK-NOV85-ERROR: invalid instruction encoding
45 # CHECK-NOV85-ERROR-NEXT: [0xa4,0xc0,0x68,0x1e]
46 # CHECK-NOV85-ERROR: invalid instruction encoding
47 # CHECK-NOV85-ERROR-NEXT: [0xe6,0xc0,0x29,0x1e]
48 # CHECK-NOV85-ERROR: invalid instruction encoding
49 # CHECK-NOV85-ERROR-NEXT: [0xe6,0xc0,0x69,0x1e]
51 # FP-to-int rounding, vector
65 #CHECK: frint32z v0.2s, v1.2s
66 #CHECK: frint32z v0.2d, v1.2d
67 #CHECK: frint32z v0.4s, v1.4s
68 #CHECK: frint64z v2.2s, v3.2s
69 #CHECK: frint64z v2.2d, v3.2d
70 #CHECK: frint64z v2.4s, v3.4s
71 #CHECK: frint32x v4.2s, v5.2s
72 #CHECK: frint32x v4.2d, v5.2d
73 #CHECK: frint32x v4.4s, v5.4s
74 #CHECK: frint64x v6.2s, v7.2s
75 #CHECK: frint64x v6.2d, v7.2d
76 #CHECK: frint64x v6.4s, v7.4s
78 # CHECK-NOV85-ERROR: invalid instruction encoding
79 # CHECK-NOV85-ERROR-NEXT: [0x20,0xe8,0x21,0x0e]
80 # CHECK-NOV85-ERROR: invalid instruction encoding
81 # CHECK-NOV85-ERROR-NEXT: [0x20,0xe8,0x61,0x4e]
82 # CHECK-NOV85-ERROR: invalid instruction encoding
83 # CHECK-NOV85-ERROR-NEXT: [0x20,0xe8,0x21,0x4e]
84 # CHECK-NOV85-ERROR: invalid instruction encoding
85 # CHECK-NOV85-ERROR-NEXT: [0x62,0xf8,0x21,0x0e]
86 # CHECK-NOV85-ERROR: invalid instruction encoding
87 # CHECK-NOV85-ERROR-NEXT: [0x62,0xf8,0x61,0x4e]
88 # CHECK-NOV85-ERROR: invalid instruction encoding
89 # CHECK-NOV85-ERROR-NEXT: [0x62,0xf8,0x21,0x4e]
90 # CHECK-NOV85-ERROR: invalid instruction encoding
91 # CHECK-NOV85-ERROR-NEXT: [0xa4,0xe8,0x21,0x2e]
92 # CHECK-NOV85-ERROR: invalid instruction encoding
93 # CHECK-NOV85-ERROR-NEXT: [0xa4,0xe8,0x61,0x6e]
94 # CHECK-NOV85-ERROR: invalid instruction encoding
95 # CHECK-NOV85-ERROR-NEXT: [0xa4,0xe8,0x21,0x6e]
96 # CHECK-NOV85-ERROR: invalid instruction encoding
97 # CHECK-NOV85-ERROR-NEXT: [0xe6,0xf8,0x21,0x2e]
98 # CHECK-NOV85-ERROR: invalid instruction encoding
99 # CHECK-NOV85-ERROR-NEXT: [0xe6,0xf8,0x61,0x6e]
100 # CHECK-NOV85-ERROR: invalid instruction encoding
101 # CHECK-NOV85-ERROR-NEXT: [0xe6,0xf8,0x21,0x6e]