3
3
4
4
// RUN: %clang --target=aarch64-linux-gnu --rtlib=compiler-rt -emit-llvm -S -o - %s | FileCheck %s
5
5
6
- // CHECK: define dso_local i32 @fmv._Maes() #[[ATTR0 :[0-9]+]] {
6
+ // CHECK: define dso_local i32 @fmv._Maes() #[[aes :[0-9]+]] {
7
7
__attribute__((target_version ("aes" ))) int fmv (void ) { return 0 ; }
8
8
9
9
// CHECK: define dso_local i32 @fmv._Mbf16() #[[bf16_ebf16:[0-9]+]] {
@@ -81,9 +81,6 @@ __attribute__((target_version("memtag3"))) int fmv(void) { return 0; }
81
81
// CHECK: define dso_local i32 @fmv._Mmops() #[[mops:[0-9]+]] {
82
82
__attribute__((target_version ("mops" ))) int fmv (void ) { return 0 ; }
83
83
84
- // CHECK: define dso_local i32 @fmv._Mpmull() #[[pmull:[0-9]+]] {
85
- __attribute__((target_version ("pmull" ))) int fmv (void ) { return 0 ; }
86
-
87
84
// CHECK: define dso_local i32 @fmv._Mpredres() #[[predres:[0-9]+]] {
88
85
__attribute__((target_version ("predres" ))) int fmv (void ) { return 0 ; }
89
86
@@ -150,15 +147,12 @@ __attribute__((target_version("sve-i8mm"))) int fmv(void) { return 0; }
150
147
// CHECK: define dso_local i32 @fmv._Msve2() #[[sve2:[0-9]+]] {
151
148
__attribute__((target_version ("sve2" ))) int fmv (void ) { return 0 ; }
152
149
153
- // CHECK: define dso_local i32 @fmv._Msve2-aes() #[[sve2_aes_sve2_pmull128 :[0-9]+]] {
150
+ // CHECK: define dso_local i32 @fmv._Msve2-aes() #[[sve2_aes :[0-9]+]] {
154
151
__attribute__((target_version ("sve2-aes" ))) int fmv (void ) { return 0 ; }
155
152
156
153
// CHECK: define dso_local i32 @fmv._Msve2-bitperm() #[[sve2_bitperm:[0-9]+]] {
157
154
__attribute__((target_version ("sve2-bitperm" ))) int fmv (void ) { return 0 ; }
158
155
159
- // CHECK: define dso_local i32 @fmv._Msve2-pmull128() #[[sve2_aes_sve2_pmull128:[0-9]+]] {
160
- __attribute__((target_version ("sve2-pmull128" ))) int fmv (void ) { return 0 ; }
161
-
162
156
// CHECK: define dso_local i32 @fmv._Msve2-sha3() #[[sve2_sha3:[0-9]+]] {
163
157
__attribute__((target_version ("sve2-sha3" ))) int fmv (void ) { return 0 ; }
164
158
@@ -177,10 +171,11 @@ int caller() {
177
171
return fmv ();
178
172
}
179
173
180
- // CHECK: attributes #[[ATTR0 ]] = { {{.*}} "target-features"="+fp-armv8,+neon,+outline-atomics,+v8a"
174
+ // CHECK: attributes #[[aes ]] = { {{.*}} "target-features"="+aes, +fp-armv8,+neon,+outline-atomics,+v8a"
181
175
// CHECK: attributes #[[bf16_ebf16]] = { {{.*}} "target-features"="+bf16,+fp-armv8,+neon,+outline-atomics,+v8a"
182
176
// CHECK: attributes #[[bti]] = { {{.*}} "target-features"="+bti,+fp-armv8,+neon,+outline-atomics,+v8a"
183
177
// CHECK: attributes #[[crc]] = { {{.*}} "target-features"="+crc,+fp-armv8,+neon,+outline-atomics,+v8a"
178
+ // CHECK: attributes #[[ATTR0]] = { {{.*}} "target-features"="+fp-armv8,+neon,+outline-atomics,+v8a"
184
179
// CHECK: attributes #[[dit]] = { {{.*}} "target-features"="+dit,+fp-armv8,+neon,+outline-atomics,+v8a"
185
180
// CHECK: attributes #[[dotprod]] = { {{.*}} "target-features"="+dotprod,+fp-armv8,+neon,+outline-atomics,+v8a"
186
181
// CHECK: attributes #[[dpb]] = { {{.*}} "target-features"="+ccpp,+fp-armv8,+neon,+outline-atomics,+v8a"
@@ -199,7 +194,6 @@ int caller() {
199
194
// CHECK: attributes #[[lse]] = { {{.*}} "target-features"="+fp-armv8,+lse,+neon,+outline-atomics,+v8a"
200
195
// CHECK: attributes #[[memtag]] = { {{.*}} "target-features"="+fp-armv8,+mte,+neon,+outline-atomics,+v8a"
201
196
// CHECK: attributes #[[mops]] = { {{.*}} "target-features"="+fp-armv8,+mops,+neon,+outline-atomics,+v8a"
202
- // CHECK: attributes #[[pmull]] = { {{.*}} "target-features"="+aes,+fp-armv8,+neon,+outline-atomics,+v8a"
203
197
// CHECK: attributes #[[predres]] = { {{.*}} "target-features"="+fp-armv8,+neon,+outline-atomics,+predres,+v8a"
204
198
// CHECK: attributes #[[rcpc]] = { {{.*}} "target-features"="+fp-armv8,+neon,+outline-atomics,+rcpc,+v8a"
205
199
// CHECK: attributes #[[rcpc3]] = { {{.*}} "target-features"="+fp-armv8,+neon,+outline-atomics,+rcpc,+rcpc3,+v8a"
@@ -218,7 +212,7 @@ int caller() {
218
212
// CHECK: attributes #[[sve_bf16_ebf16]] = { {{.*}} "target-features"="+bf16,+fp-armv8,+fullfp16,+neon,+outline-atomics,+sve,+v8a"
219
213
// CHECK: attributes #[[sve_i8mm]] = { {{.*}} "target-features"="+fp-armv8,+fullfp16,+i8mm,+neon,+outline-atomics,+sve,+v8a"
220
214
// CHECK: attributes #[[sve2]] = { {{.*}} "target-features"="+fp-armv8,+fullfp16,+neon,+outline-atomics,+sve,+sve2,+v8a"
221
- // CHECK: attributes #[[sve2_aes_sve2_pmull128 ]] = { {{.*}} "target-features"="+fp-armv8,+fullfp16,+neon,+outline-atomics,+sve,+sve2,+sve2-aes,+v8a"
215
+ // CHECK: attributes #[[sve2_aes ]] = { {{.*}} "target-features"="+aes, +fp-armv8,+fullfp16,+neon,+outline-atomics,+sve,+sve2,+sve2-aes,+v8a"
222
216
// CHECK: attributes #[[sve2_bitperm]] = { {{.*}} "target-features"="+fp-armv8,+fullfp16,+neon,+outline-atomics,+sve,+sve2,+sve2-bitperm,+v8a"
223
217
// CHECK: attributes #[[sve2_sha3]] = { {{.*}} "target-features"="+fp-armv8,+fullfp16,+neon,+outline-atomics,+sve,+sve2,+sve2-sha3,+v8a"
224
218
// CHECK: attributes #[[sve2_sm4]] = { {{.*}} "target-features"="+fp-armv8,+fullfp16,+neon,+outline-atomics,+sve,+sve2,+sve2-sm4,+v8a"
0 commit comments