Run DCE after a LoopFlatten test to reduce spurious output [nfc]
[llvm-project.git] / llvm / test / MC / AArch64 / armv8.9a-lrcpc3.s
blob263f200428b681a90c42a9bdc59ed7899ee625ba
1 // RUN: llvm-mc -triple aarch64-none-linux-gnu -show-encoding -mattr=+rcpc3 < %s | FileCheck %s
2 // RUN: llvm-mc -triple aarch64-none-linux-gnu -show-encoding -mattr=+v8.9a -mattr=+rcpc3 < %s | FileCheck %s
3 // RUN: llvm-mc -triple aarch64-none-linux-gnu -show-encoding -mattr=+v9.4a -mattr=+rcpc3 < %s | FileCheck %s
5 // RUN: not llvm-mc -triple aarch64-none-linux-gnu < %s 2>&1 | FileCheck --check-prefix=ERROR-NO-RCPC3 %s
6 // RUN: not llvm-mc -triple aarch64-none-linux-gnu -mattr=+v8.9a < %s 2>&1 | FileCheck --check-prefix=ERROR-NO-RCPC3 %s
7 // RUN: not llvm-mc -triple aarch64-none-linux-gnu -mattr=+v9.4a < %s 2>&1 | FileCheck --check-prefix=ERROR-NO-RCPC3 %s
9 stilp w24, w0, [x16, #-8]!
10 // CHECK: stilp w24, w0, [x16, #-8]! // encoding: [0x18,0x0a,0x00,0x99]
11 // ERROR-NO-RCPC3: [[@LINE-2]]:16: error: instruction requires: rcpc3
12 stilp w24, w0, [x16, -8]!
13 // CHECK: stilp w24, w0, [x16, #-8]! // encoding: [0x18,0x0a,0x00,0x99]
14 // ERROR-NO-RCPC3: [[@LINE-2]]:16: error: instruction requires: rcpc3
15 stilp x25, x1, [x17, -16]!
16 // CHECK: stilp x25, x1, [x17, #-16]! // encoding: [0x39,0x0a,0x01,0xd9]
17 // ERROR-NO-RCPC3: [[@LINE-2]]:16: error: instruction requires: rcpc3
18 stilp x25, x1, [x17, #-16]!
19 // CHECK: stilp x25, x1, [x17, #-16]! // encoding: [0x39,0x0a,0x01,0xd9]
20 // ERROR-NO-RCPC3: [[@LINE-2]]:16: error: instruction requires: rcpc3
21 stilp w26, w2, [x18]
22 // CHECK: stilp w26, w2, [x18] // encoding: [0x5a,0x1a,0x02,0x99]
23 // ERROR-NO-RCPC3: [[@LINE-2]]:16: error: instruction requires: rcpc3
24 stilp w26, w2, [x18, #0]
25 // CHECK: stilp w26, w2, [x18] // encoding: [0x5a,0x1a,0x02,0x99]
26 // ERROR-NO-RCPC3: [[@LINE-2]]:16: error: instruction requires: rcpc3
27 stilp x27, x3, [sp]
28 // CHECK: stilp x27, x3, [sp] // encoding: [0xfb,0x1b,0x03,0xd9]
29 // ERROR-NO-RCPC3: [[@LINE-2]]:16: error: instruction requires: rcpc3
30 stilp x27, x3, [sp, 0]
31 // CHECK: stilp x27, x3, [sp] // encoding: [0xfb,0x1b,0x03,0xd9]
32 // ERROR-NO-RCPC3: [[@LINE-2]]:16: error: instruction requires: rcpc3
33 ldiapp w28, w4, [x20], #8
34 // CHECK: ldiapp w28, w4, [x20], #8 // encoding: [0x9c,0x0a,0x44,0x99]
35 // ERROR-NO-RCPC3: [[@LINE-2]]:16: error: instruction requires: rcpc3
36 ldiapp w28, w4, [x20, #0], #8
37 // CHECK: ldiapp w28, w4, [x20], #8 // encoding: [0x9c,0x0a,0x44,0x99]
38 // ERROR-NO-RCPC3: [[@LINE-2]]:16: error: instruction requires: rcpc3
39 ldiapp w28, w4, [x20], 8
40 // CHECK: ldiapp w28, w4, [x20], #8 // encoding: [0x9c,0x0a,0x44,0x99]
41 // ERROR-NO-RCPC3: [[@LINE-2]]:16: error: instruction requires: rcpc3
42 ldiapp w28, w4, [x20, 0], 8
43 // CHECK: ldiapp w28, w4, [x20], #8 // encoding: [0x9c,0x0a,0x44,0x99]
44 // ERROR-NO-RCPC3: [[@LINE-2]]:16: error: instruction requires: rcpc3
45 ldiapp x29, x5, [x21], #16
46 // CHECK: ldiapp x29, x5, [x21], #16 // encoding: [0xbd,0x0a,0x45,0xd9]
47 // ERROR-NO-RCPC3: [[@LINE-2]]:16: error: instruction requires: rcpc3
48 ldiapp x29, x5, [x21], 16
49 // CHECK: ldiapp x29, x5, [x21], #16 // encoding: [0xbd,0x0a,0x45,0xd9]
50 // ERROR-NO-RCPC3: [[@LINE-2]]:16: error: instruction requires: rcpc3
51 ldiapp w30, w6, [sp]
52 // CHECK: ldiapp w30, w6, [sp] // encoding: [0xfe,0x1b,0x46,0x99]
53 // ERROR-NO-RCPC3: [[@LINE-2]]:16: error: instruction requires: rcpc3
54 ldiapp w30, w6, [sp, #0]
55 // CHECK: ldiapp w30, w6, [sp] // encoding: [0xfe,0x1b,0x46,0x99]
56 // ERROR-NO-RCPC3: [[@LINE-2]]:16: error: instruction requires: rcpc3
57 ldiapp xzr, x7, [x23]
58 // CHECK: ldiapp xzr, x7, [x23] // encoding: [0xff,0x1a,0x47,0xd9]
59 // ERROR-NO-RCPC3: [[@LINE-2]]:16: error: instruction requires: rcpc3
60 ldiapp xzr, x7, [x23, 0]
61 // CHECK: ldiapp xzr, x7, [x23] // encoding: [0xff,0x1a,0x47,0xd9]
62 // ERROR-NO-RCPC3: [[@LINE-2]]:16: error: instruction requires: rcpc3
64 stlr w3, [x15, #-4]!
65 // CHECK: stlr w3, [x15, #-4]! // encoding: [0xe3,0x09,0x80,0x99]
66 // ERROR-NO-RCPC3: [[@LINE-2]]:16: error: instruction requires: rcpc3
67 stlr w3, [x15, -4]!
68 // CHECK: stlr w3, [x15, #-4]! // encoding: [0xe3,0x09,0x80,0x99]
69 // ERROR-NO-RCPC3: [[@LINE-2]]:16: error: instruction requires: rcpc3
70 stlr x3, [x15, #-8]!
71 // CHECK: stlr x3, [x15, #-8]! // encoding: [0xe3,0x09,0x80,0xd9]
72 // ERROR-NO-RCPC3: [[@LINE-2]]:16: error: instruction requires: rcpc3
73 stlr x3, [sp, -8]!
74 // CHECK: stlr x3, [sp, #-8]! // encoding: [0xe3,0x0b,0x80,0xd9]
75 // ERROR-NO-RCPC3: [[@LINE-2]]:16: error: instruction requires: rcpc3
76 ldapr w3, [sp], #4
77 // CHECK: ldapr w3, [sp], #4 // encoding: [0xe3,0x0b,0xc0,0x99]
78 // ERROR-NO-RCPC3: [[@LINE-2]]:16: error: instruction requires: rcpc3
79 ldapr w3, [x15], 4
80 // CHECK: ldapr w3, [x15], #4 // encoding: [0xe3,0x09,0xc0,0x99]
81 // ERROR-NO-RCPC3: [[@LINE-2]]:16: error: instruction requires: rcpc3
82 ldapr x3, [x15], #8
83 // CHECK: ldapr x3, [x15], #8 // encoding: [0xe3,0x09,0xc0,0xd9]
84 // ERROR-NO-RCPC3: [[@LINE-2]]:16: error: instruction requires: rcpc3
85 ldapr x3, [x15], 8
86 // CHECK: ldapr x3, [x15], #8 // encoding: [0xe3,0x09,0xc0,0xd9]
87 // ERROR-NO-RCPC3: [[@LINE-2]]:16: error: instruction requires: rcpc3
89 stlur b3, [x15, #-1]
90 // CHECK: stlur b3, [x15, #-1] // encoding: [0xe3,0xf9,0x1f,0x1d]
91 // ERROR-NO-RCPC3: [[@LINE-2]]:16: error: instruction requires: rcpc3
92 stlur h3, [x15, #2]
93 // CHECK: stlur h3, [x15, #2] // encoding: [0xe3,0x29,0x00,0x5d]
94 // ERROR-NO-RCPC3: [[@LINE-2]]:16: error: instruction requires: rcpc3
95 stlur s3, [x15, #-3]
96 // CHECK: stlur s3, [x15, #-3] // encoding: [0xe3,0xd9,0x1f,0x9d]
97 // ERROR-NO-RCPC3: [[@LINE-2]]:16: error: instruction requires: rcpc3
98 stlur d3, [sp, #4]
99 // CHECK: stlur d3, [sp, #4] // encoding: [0xe3,0x4b,0x00,0xdd]
100 // ERROR-NO-RCPC3: [[@LINE-2]]:16: error: instruction requires: rcpc3
101 stlur q3, [x15, #-5]
102 // CHECK: stlur q3, [x15, #-5] // encoding: [0xe3,0xb9,0x9f,0x1d]
103 // ERROR-NO-RCPC3: [[@LINE-2]]:16: error: instruction requires: rcpc3
104 ldapur b3, [x15, #6]
105 // CHECK: ldapur b3, [x15, #6] // encoding: [0xe3,0x69,0x40,0x1d]
106 // ERROR-NO-RCPC3: [[@LINE-2]]:16: error: instruction requires: rcpc3
107 ldapur h3, [x15, #-7]
108 // CHECK: ldapur h3, [x15, #-7] // encoding: [0xe3,0x99,0x5f,0x5d]
109 // ERROR-NO-RCPC3: [[@LINE-2]]:16: error: instruction requires: rcpc3
110 ldapur s3, [x15, #8]
111 // CHECK: ldapur s3, [x15, #8] // encoding: [0xe3,0x89,0x40,0x9d]
112 // ERROR-NO-RCPC3: [[@LINE-2]]:16: error: instruction requires: rcpc3
113 ldapur d3, [x15, #-9]
114 // CHECK: ldapur d3, [x15, #-9] // encoding: [0xe3,0x79,0x5f,0xdd]
115 // ERROR-NO-RCPC3: [[@LINE-2]]:16: error: instruction requires: rcpc3
116 ldapur q3, [sp, #10]
117 // CHECK: ldapur q3, [sp, #10] // encoding: [0xe3,0xab,0xc0,0x1d]
118 // ERROR-NO-RCPC3: [[@LINE-2]]:16: error: instruction requires: rcpc3
120 stl1 { v3.d }[0], [x15]
121 // CHECK: stl1 { v3.d }[0], [x15] // encoding: [0xe3,0x85,0x01,0x0d]
122 // ERROR-NO-RCPC3: [[@LINE-2]]:16: error: instruction requires: rcpc3
123 stl1 { v3.d }[0], [x15, #0]
124 // CHECK: stl1 { v3.d }[0], [x15] // encoding: [0xe3,0x85,0x01,0x0d]
125 // ERROR-NO-RCPC3: [[@LINE-2]]:16: error: instruction requires: rcpc3
126 stl1 { v3.d }[1], [sp]
127 // CHECK: stl1 { v3.d }[1], [sp] // encoding: [0xe3,0x87,0x01,0x4d]
128 // ERROR-NO-RCPC3: [[@LINE-2]]:16: error: instruction requires: rcpc3
129 stl1 { v3.d }[1], [sp, 0]
130 // CHECK: stl1 { v3.d }[1], [sp] // encoding: [0xe3,0x87,0x01,0x4d]
131 // ERROR-NO-RCPC3: [[@LINE-2]]:16: error: instruction requires: rcpc3
132 ldap1 { v3.d }[0], [sp]
133 // CHECK: ldap1 { v3.d }[0], [sp] // encoding: [0xe3,0x87,0x41,0x0d]
134 // ERROR-NO-RCPC3: [[@LINE-2]]:16: error: instruction requires: rcpc3
135 ldap1 { v3.d }[0], [sp, #0]
136 // CHECK: ldap1 { v3.d }[0], [sp] // encoding: [0xe3,0x87,0x41,0x0d]
137 // ERROR-NO-RCPC3: [[@LINE-2]]:16: error: instruction requires: rcpc3
138 ldap1 { v3.d }[1], [x15]
139 // CHECK: ldap1 { v3.d }[1], [x15] // encoding: [0xe3,0x85,0x41,0x4d]
140 // ERROR-NO-RCPC3: [[@LINE-2]]:16: error: instruction requires: rcpc3
141 ldap1 { v3.d }[1], [x15, 0]
142 // CHECK: ldap1 { v3.d }[1], [x15] // encoding: [0xe3,0x85,0x41,0x4d]
143 // ERROR-NO-RCPC3: [[@LINE-2]]:16: error: instruction requires: rcpc3