@@ -139,62 +139,64 @@ __attribute__((target_version("sve2-sm4"))) int fmv(void) { return 0; }
139
139
// CHECK: define dso_local i32 @fmv._Mwfxt() #[[wfxt:[0-9]+]] {
140
140
__attribute__((target_version ("wfxt" ))) int fmv (void ) { return 0 ; }
141
141
142
- // CHECK: define dso_local i32 @fmv._MaesMbf16MbtiMcrc() #[[multiple_features :[0-9]+]] {
143
- __attribute__((target_version ("aes+bf16 +bti+crc " ))) int fmv (void ) { return 0 ; }
142
+ // CHECK: define dso_local i32 @fmv._MaesMbf16MbtiMcrc() #[[unordered_features_with_duplicates :[0-9]+]] {
143
+ __attribute__((target_version ("crc+bti +bti+bti+aes+aes+bf16 " ))) int fmv (void ) { return 0 ; }
144
144
145
145
// CHECK-NOT: define dso_local i32 @fmv._M{{.*}}
146
146
__attribute__((target_version ("non_existent_extension" ))) int fmv (void );
147
147
148
+ // CHECK: define dso_local i32 @fmv.default() #[[default:[0-9]+]] {
148
149
__attribute__((target_version ("default" ))) int fmv (void );
149
150
150
151
int caller () {
151
152
return fmv ();
152
153
}
153
154
154
- // CHECK: attributes #[[aes]] = { {{.*}} "fmv-features"="+aes"
155
- // CHECK: attributes #[[bf16]] = { {{.*}} "fmv-features"="+bf16"
156
- // CHECK: attributes #[[bti]] = { {{.*}} "fmv-features"="+bti"
157
- // CHECK: attributes #[[crc]] = { {{.*}} "fmv-features"="+crc"
158
- // CHECK: attributes #[[dit]] = { {{.*}} "fmv-features"="+dit"
159
- // CHECK: attributes #[[dotprod]] = { {{.*}} "fmv-features"="+dotprod"
160
- // CHECK: attributes #[[dpb]] = { {{.*}} "fmv-features"="+dpb"
161
- // CHECK: attributes #[[dpb2]] = { {{.*}} "fmv-features"="+dpb2"
162
- // CHECK: attributes #[[f32mm]] = { {{.*}} "fmv-features"="+f32mm"
163
- // CHECK: attributes #[[f64mm]] = { {{.*}} "fmv-features"="+f64mm"
164
- // CHECK: attributes #[[fcma]] = { {{.*}} "fmv-features"="+fcma"
165
- // CHECK: attributes #[[flagm]] = { {{.*}} "fmv-features"="+flagm"
166
- // CHECK: attributes #[[flagm2]] = { {{.*}} "fmv-features"="+flagm2"
167
- // CHECK: attributes #[[fp]] = { {{.*}} "fmv-features"="+fp"
168
- // CHECK: attributes #[[fp16]] = { {{.*}} "fmv-features"="+fp16"
169
- // CHECK: attributes #[[fp16fml]] = { {{.*}} "fmv-features"="+fp16fml"
170
- // CHECK: attributes #[[frintts]] = { {{.*}} "fmv-features"="+frintts"
171
- // CHECK: attributes #[[i8mm]] = { {{.*}} "fmv-features"="+i8mm"
172
- // CHECK: attributes #[[jscvt]] = { {{.*}} "fmv-features"="+jscvt"
173
- // CHECK: attributes #[[ls64]] = { {{.*}} "fmv-features"="+ls64"
174
- // CHECK: attributes #[[lse]] = { {{.*}} "fmv-features"="+lse"
175
- // CHECK: attributes #[[memtag]] = { {{.*}} "fmv-features"="+memtag"
176
- // CHECK: attributes #[[mops]] = { {{.*}} "fmv-features"="+mops"
177
- // CHECK: attributes #[[predres]] = { {{.*}} "fmv-features"="+predres"
178
- // CHECK: attributes #[[rcpc]] = { {{.*}} "fmv-features"="+rcpc"
179
- // CHECK: attributes #[[rcpc2]] = { {{.*}} "fmv-features"="+rcpc2"
180
- // CHECK: attributes #[[rcpc3]] = { {{.*}} "fmv-features"="+rcpc3"
181
- // CHECK: attributes #[[rdm]] = { {{.*}} "fmv-features"="+rdm"
182
- // CHECK: attributes #[[rng]] = { {{.*}} "fmv-features"="+rng"
183
- // CHECK: attributes #[[sb]] = { {{.*}} "fmv-features"="+sb"
184
- // CHECK: attributes #[[sha2]] = { {{.*}} "fmv-features"="+sha2"
185
- // CHECK: attributes #[[sha3]] = { {{.*}} "fmv-features"="+sha3"
186
- // CHECK: attributes #[[simd]] = { {{.*}} "fmv-features"="+simd"
187
- // CHECK: attributes #[[sm4]] = { {{.*}} "fmv-features"="+sm4"
188
- // CHECK: attributes #[[sme]] = { {{.*}} "fmv-features"="+sme"
189
- // CHECK: attributes #[[sme_f64f64]] = { {{.*}} "fmv-features"="+sme-f64f64"
190
- // CHECK: attributes #[[sme_i16i64]] = { {{.*}} "fmv-features"="+sme-i16i64"
191
- // CHECK: attributes #[[sme2]] = { {{.*}} "fmv-features"="+sme2"
192
- // CHECK: attributes #[[ssbs]] = { {{.*}} "fmv-features"="+ssbs"
193
- // CHECK: attributes #[[sve]] = { {{.*}} "fmv-features"="+sve"
194
- // CHECK: attributes #[[sve2]] = { {{.*}} "fmv-features"="+sve2"
195
- // CHECK: attributes #[[sve2_aes]] = { {{.*}} "fmv-features"="+sve2-aes"
196
- // CHECK: attributes #[[sve2_bitperm]] = { {{.*}} "fmv-features"="+sve2-bitperm"
197
- // CHECK: attributes #[[sve2_sha3]] = { {{.*}} "fmv-features"="+sve2-sha3"
198
- // CHECK: attributes #[[sve2_sm4]] = { {{.*}} "fmv-features"="+sve2-sm4"
199
- // CHECK: attributes #[[wfxt]] = { {{.*}} "fmv-features"="+wfxt"
200
- // CHECK: attributes #[[multiple_features]] = { {{.*}} "fmv-features"="+aes,+bf16,+bti,+crc"
155
+ // CHECK: attributes #[[aes]] = {{.*}} "fmv-features"="aes"
156
+ // CHECK: attributes #[[bf16]] = {{.*}} "fmv-features"="bf16"
157
+ // CHECK: attributes #[[bti]] = {{.*}} "fmv-features"="bti"
158
+ // CHECK: attributes #[[crc]] = {{.*}} "fmv-features"="crc"
159
+ // CHECK: attributes #[[dit]] = {{.*}} "fmv-features"="dit"
160
+ // CHECK: attributes #[[dotprod]] = {{.*}} "fmv-features"="dotprod"
161
+ // CHECK: attributes #[[dpb]] = {{.*}} "fmv-features"="dpb"
162
+ // CHECK: attributes #[[dpb2]] = {{.*}} "fmv-features"="dpb2"
163
+ // CHECK: attributes #[[f32mm]] = {{.*}} "fmv-features"="f32mm"
164
+ // CHECK: attributes #[[f64mm]] = {{.*}} "fmv-features"="f64mm"
165
+ // CHECK: attributes #[[fcma]] = {{.*}} "fmv-features"="fcma"
166
+ // CHECK: attributes #[[flagm]] = {{.*}} "fmv-features"="flagm"
167
+ // CHECK: attributes #[[flagm2]] = {{.*}} "fmv-features"="flagm2"
168
+ // CHECK: attributes #[[fp]] = {{.*}} "fmv-features"="fp"
169
+ // CHECK: attributes #[[fp16]] = {{.*}} "fmv-features"="fp16"
170
+ // CHECK: attributes #[[fp16fml]] = {{.*}} "fmv-features"="fp16fml"
171
+ // CHECK: attributes #[[frintts]] = {{.*}} "fmv-features"="frintts"
172
+ // CHECK: attributes #[[i8mm]] = {{.*}} "fmv-features"="i8mm"
173
+ // CHECK: attributes #[[jscvt]] = {{.*}} "fmv-features"="jscvt"
174
+ // CHECK: attributes #[[ls64]] = {{.*}} "fmv-features"="ls64"
175
+ // CHECK: attributes #[[lse]] = {{.*}} "fmv-features"="lse"
176
+ // CHECK: attributes #[[memtag]] = {{.*}} "fmv-features"="memtag"
177
+ // CHECK: attributes #[[mops]] = {{.*}} "fmv-features"="mops"
178
+ // CHECK: attributes #[[predres]] = {{.*}} "fmv-features"="predres"
179
+ // CHECK: attributes #[[rcpc]] = {{.*}} "fmv-features"="rcpc"
180
+ // CHECK: attributes #[[rcpc2]] = {{.*}} "fmv-features"="rcpc2"
181
+ // CHECK: attributes #[[rcpc3]] = {{.*}} "fmv-features"="rcpc3"
182
+ // CHECK: attributes #[[rdm]] = {{.*}} "fmv-features"="rdm"
183
+ // CHECK: attributes #[[rng]] = {{.*}} "fmv-features"="rng"
184
+ // CHECK: attributes #[[sb]] = {{.*}} "fmv-features"="sb"
185
+ // CHECK: attributes #[[sha2]] = {{.*}} "fmv-features"="sha2"
186
+ // CHECK: attributes #[[sha3]] = {{.*}} "fmv-features"="sha3"
187
+ // CHECK: attributes #[[simd]] = {{.*}} "fmv-features"="simd"
188
+ // CHECK: attributes #[[sm4]] = {{.*}} "fmv-features"="sm4"
189
+ // CHECK: attributes #[[sme]] = {{.*}} "fmv-features"="sme"
190
+ // CHECK: attributes #[[sme_f64f64]] = {{.*}} "fmv-features"="sme-f64f64"
191
+ // CHECK: attributes #[[sme_i16i64]] = {{.*}} "fmv-features"="sme-i16i64"
192
+ // CHECK: attributes #[[sme2]] = {{.*}} "fmv-features"="sme2"
193
+ // CHECK: attributes #[[ssbs]] = {{.*}} "fmv-features"="ssbs"
194
+ // CHECK: attributes #[[sve]] = {{.*}} "fmv-features"="sve"
195
+ // CHECK: attributes #[[sve2]] = {{.*}} "fmv-features"="sve2"
196
+ // CHECK: attributes #[[sve2_aes]] = {{.*}} "fmv-features"="sve2-aes"
197
+ // CHECK: attributes #[[sve2_bitperm]] = {{.*}} "fmv-features"="sve2-bitperm"
198
+ // CHECK: attributes #[[sve2_sha3]] = {{.*}} "fmv-features"="sve2-sha3"
199
+ // CHECK: attributes #[[sve2_sm4]] = {{.*}} "fmv-features"="sve2-sm4"
200
+ // CHECK: attributes #[[wfxt]] = {{.*}} "fmv-features"="wfxt"
201
+ // CHECK: attributes #[[unordered_features_with_duplicates]] = {{.*}} "fmv-features"="aes,bf16,bti,crc"
202
+ // CHECK: attributes #[[default]] = {{.*}} "fmv-features"
0 commit comments