Lines Matching refs:ARM

110 void ARMTargetStreamer::emitArch(ARM::ArchKind Arch) {}  in emitArch()
112 void ARMTargetStreamer::emitObjectArch(ARM::ArchKind Arch) {} in emitObjectArch()
123 if (STI.hasFeature(ARM::HasV8Ops)) { in getArchForCPU()
124 if (STI.hasFeature(ARM::FeatureRClass)) in getArchForCPU()
127 } else if (STI.hasFeature(ARM::HasV8_1MMainlineOps)) in getArchForCPU()
129 else if (STI.hasFeature(ARM::HasV8MMainlineOps)) in getArchForCPU()
131 else if (STI.hasFeature(ARM::HasV7Ops)) { in getArchForCPU()
132 if (STI.hasFeature(ARM::FeatureMClass) && STI.hasFeature(ARM::FeatureDSP)) in getArchForCPU()
135 } else if (STI.hasFeature(ARM::HasV6T2Ops)) in getArchForCPU()
137 else if (STI.hasFeature(ARM::HasV8MBaselineOps)) in getArchForCPU()
139 else if (STI.hasFeature(ARM::HasV6MOps)) in getArchForCPU()
141 else if (STI.hasFeature(ARM::HasV6Ops)) in getArchForCPU()
143 else if (STI.hasFeature(ARM::HasV5TEOps)) in getArchForCPU()
145 else if (STI.hasFeature(ARM::HasV5TOps)) in getArchForCPU()
147 else if (STI.hasFeature(ARM::HasV4TOps)) in getArchForCPU()
155 return (STI.hasFeature(ARM::HasV8MBaselineOps) && in isV8M()
156 !STI.hasFeature(ARM::HasV6T2Ops)) || in isV8M()
157 STI.hasFeature(ARM::HasV8MMainlineOps); in isV8M()
168 if (STI.hasFeature(ARM::ProcKrait)) { in emitTargetAttributes()
172 if (STI.hasFeature(ARM::FeatureHWDivThumb) || in emitTargetAttributes()
173 STI.hasFeature(ARM::FeatureHWDivARM)) in emitTargetAttributes()
174 emitArchExtension(ARM::AEK_HWDIVTHUMB | ARM::AEK_HWDIVARM); in emitTargetAttributes()
182 if (STI.hasFeature(ARM::FeatureAClass)) { in emitTargetAttributes()
185 } else if (STI.hasFeature(ARM::FeatureRClass)) { in emitTargetAttributes()
188 } else if (STI.hasFeature(ARM::FeatureMClass)) { in emitTargetAttributes()
193 emitAttribute(ARMBuildAttrs::ARM_ISA_use, STI.hasFeature(ARM::FeatureNoARM) in emitTargetAttributes()
200 } else if (STI.hasFeature(ARM::FeatureThumb2)) { in emitTargetAttributes()
203 } else if (STI.hasFeature(ARM::HasV4TOps)) { in emitTargetAttributes()
207 if (STI.hasFeature(ARM::FeatureNEON)) { in emitTargetAttributes()
210 if (STI.hasFeature(ARM::FeatureFPARMv8)) { in emitTargetAttributes()
211 if (STI.hasFeature(ARM::FeatureCrypto)) in emitTargetAttributes()
212 emitFPU(ARM::FK_CRYPTO_NEON_FP_ARMV8); in emitTargetAttributes()
214 emitFPU(ARM::FK_NEON_FP_ARMV8); in emitTargetAttributes()
215 } else if (STI.hasFeature(ARM::FeatureVFP4)) in emitTargetAttributes()
216 emitFPU(ARM::FK_NEON_VFPV4); in emitTargetAttributes()
218 emitFPU(STI.hasFeature(ARM::FeatureFP16) ? ARM::FK_NEON_FP16 in emitTargetAttributes()
219 : ARM::FK_NEON); in emitTargetAttributes()
221 if (STI.hasFeature(ARM::HasV8Ops)) in emitTargetAttributes()
223 STI.hasFeature(ARM::HasV8_1aOps) in emitTargetAttributes()
227 if (STI.hasFeature(ARM::FeatureFPARMv8_D16_SP)) in emitTargetAttributes()
230 emitFPU(STI.hasFeature(ARM::FeatureD32) in emitTargetAttributes()
231 ? ARM::FK_FP_ARMV8 in emitTargetAttributes()
232 : (STI.hasFeature(ARM::FeatureFP64) ? ARM::FK_FPV5_D16 in emitTargetAttributes()
233 : ARM::FK_FPV5_SP_D16)); in emitTargetAttributes()
234 else if (STI.hasFeature(ARM::FeatureVFP4_D16_SP)) in emitTargetAttributes()
235 emitFPU(STI.hasFeature(ARM::FeatureD32) in emitTargetAttributes()
236 ? ARM::FK_VFPV4 in emitTargetAttributes()
237 : (STI.hasFeature(ARM::FeatureFP64) ? ARM::FK_VFPV4_D16 in emitTargetAttributes()
238 : ARM::FK_FPV4_SP_D16)); in emitTargetAttributes()
239 else if (STI.hasFeature(ARM::FeatureVFP3_D16_SP)) in emitTargetAttributes()
241 STI.hasFeature(ARM::FeatureD32) in emitTargetAttributes()
243 ? (STI.hasFeature(ARM::FeatureFP16) ? ARM::FK_VFPV3_FP16 in emitTargetAttributes()
244 : ARM::FK_VFPV3) in emitTargetAttributes()
246 : (STI.hasFeature(ARM::FeatureFP64) in emitTargetAttributes()
247 ? (STI.hasFeature(ARM::FeatureFP16) in emitTargetAttributes()
248 ? ARM::FK_VFPV3_D16_FP16 in emitTargetAttributes()
249 : ARM::FK_VFPV3_D16) in emitTargetAttributes()
250 : (STI.hasFeature(ARM::FeatureFP16) ? ARM::FK_VFPV3XD_FP16 in emitTargetAttributes()
251 : ARM::FK_VFPV3XD))); in emitTargetAttributes()
252 else if (STI.hasFeature(ARM::FeatureVFP2_SP)) in emitTargetAttributes()
253 emitFPU(ARM::FK_VFPV2); in emitTargetAttributes()
257 if (STI.hasFeature(ARM::FeatureVFP2_SP) && !STI.hasFeature(ARM::FeatureFP64)) in emitTargetAttributes()
261 if (STI.hasFeature(ARM::FeatureFP16)) in emitTargetAttributes()
264 if (STI.hasFeature(ARM::FeatureMP)) in emitTargetAttributes()
267 if (STI.hasFeature(ARM::HasMVEFloatOps)) in emitTargetAttributes()
269 else if (STI.hasFeature(ARM::HasMVEIntegerOps)) in emitTargetAttributes()
278 if (STI.hasFeature(ARM::FeatureHWDivARM) && !STI.hasFeature(ARM::HasV8Ops)) in emitTargetAttributes()
281 if (STI.hasFeature(ARM::FeatureDSP) && isV8M(STI)) in emitTargetAttributes()
284 if (STI.hasFeature(ARM::FeatureStrictAlign)) in emitTargetAttributes()
291 if (STI.hasFeature(ARM::FeatureTrustZone) && in emitTargetAttributes()
292 STI.hasFeature(ARM::FeatureVirtualization)) in emitTargetAttributes()
295 else if (STI.hasFeature(ARM::FeatureTrustZone)) in emitTargetAttributes()
297 else if (STI.hasFeature(ARM::FeatureVirtualization)) in emitTargetAttributes()