Lines Matching defs:Feature

732   for (auto &Feature : Features)
733 if (!llvm::AArch64::parseFMVExtension(Feature.trim()).has_value())
738 bool AArch64TargetInfo::hasFeature(StringRef Feature) const {
739 return llvm::StringSwitch<bool>(Feature)
826 for (const auto &Feature : Features) {
827 if (Feature == "-fp-armv8")
829 if (Feature == "-neon")
831 if (Feature == "-sve")
834 if (Feature == "+neon" || Feature == "+fp-armv8")
836 if (Feature == "+jscvt") {
840 if (Feature == "+fcma") {
845 if (Feature == "+sve") {
850 if (Feature == "+sve2") {
856 if (Feature == "+sve2p1") {
863 if (Feature == "+sve-aes") {
868 if (Feature == "+sve2-sha3") {
875 if (Feature == "+sve2-sm4") {
882 if (Feature == "+sve-b16b16")
884 if (Feature == "+sve-bitperm") {
889 if (Feature == "+f32mm") {
895 if (Feature == "+f64mm") {
901 if (Feature == "+sme") {
906 if (Feature == "+sme2") {
912 if (Feature == "+sme2p1") {
919 if (Feature == "+sme-f64f64") {
925 if (Feature == "+sme-i16i64") {
931 if (Feature == "+sme-fa64") {
938 if (Feature == "+sme-f16f16") {
945 if (Feature == "+sme-b16b16") {
953 if (Feature == "+sb")
955 if (Feature == "+predres")
957 if (Feature == "+ssbs")
959 if (Feature == "+bti")
961 if (Feature == "+wfxt")
963 if (Feature == "-fmv")
965 if (Feature == "+crc")
967 if (Feature == "+rcpc")
969 if (Feature == "+aes") {
973 if (Feature == "+sha2") {
977 if (Feature == "+sha3") {
982 if (Feature == "+rdm") {
986 if (Feature == "+dit")
988 if (Feature == "+cccp")
990 if (Feature == "+ccdp") {
994 if (Feature == "+fptoint")
996 if (Feature == "+sm4") {
1000 if (Feature == "+strict-align")
1004 if (Feature == "+v8a" && ArchInfo->Version < llvm::AArch64::ARMV8A.Version)
1006 if (Feature == "+v8.1a" &&
1009 if (Feature == "+v8.2a" &&
1012 if (Feature == "+v8.3a" &&
1015 if (Feature == "+v8.4a" &&
1018 if (Feature == "+v8.5a" &&
1021 if (Feature == "+v8.6a" &&
1024 if (Feature == "+v8.7a" &&
1027 if (Feature == "+v8.8a" &&
1030 if (Feature == "+v8.9a" &&
1033 if (Feature == "+v9a" && ArchInfo->Version < llvm::AArch64::ARMV9A.Version)
1035 if (Feature == "+v9.1a" &&
1038 if (Feature == "+v9.2a" &&
1041 if (Feature == "+v9.3a" &&
1044 if (Feature == "+v9.4a" &&
1047 if (Feature == "+v9.5a" &&
1050 if (Feature == "+v9.6a" &&
1053 if (Feature == "+v8r")
1055 if (Feature == "+fullfp16") {
1059 if (Feature == "+dotprod") {
1063 if (Feature == "+fp16fml") {
1068 if (Feature == "+mte")
1070 if (Feature == "+tme")
1072 if (Feature == "+pauth")
1074 if (Feature == "+i8mm")
1076 if (Feature == "+bf16")
1078 if (Feature == "+lse")
1080 if (Feature == "+ls64")
1082 if (Feature == "+rand")
1084 if (Feature == "+flagm")
1086 if (Feature == "+altnzcv") {
1090 if (Feature == "+mops")
1092 if (Feature == "+d128")
1094 if (Feature == "+gcs")
1096 if (Feature == "+rcpc3")
1098 if (Feature == "+pauth-lr") {
1107 for (const auto &Feature : Features) {
1108 if (Feature == "-d128")
1154 for (StringRef Feature : SplitFeatures) {
1155 if (FeatureBits.parseModifier(Feature))
1163 if (Feature.starts_with("no"))
1164 Features.push_back("-" + Feature.drop_front(2).str());
1166 Features.push_back("+" + Feature.str());
1175 for (auto &Feature : AttrFeatures) {
1176 Feature = Feature.trim();
1177 if (Feature.starts_with("fpmath="))
1180 if (Feature.starts_with("branch-protection=")) {
1181 Ret.BranchProtection = Feature.split('=').second.trim();
1185 if (Feature.starts_with("arch=")) {
1190 Feature.split("=").second.trim().split("+");
1200 } else if (Feature.starts_with("cpu=")) {
1207 Feature.split("=").second.trim().split("+");
1214 } else if (Feature.starts_with("tune=")) {
1218 Ret.Tune = Feature.split("=").second.trim();
1219 } else if (Feature.starts_with("+")) {
1220 SplitAndAddFeatures(Feature, Ret.Features, FeatureBits);
1222 if (FeatureBits.parseModifier(Feature, /* AllowNoDashForm = */ true))
1230 if (Feature.starts_with("no-"))
1231 Ret.Features.push_back("-" + Feature.drop_front(3).str());
1233 Ret.Features.push_back("+" + Feature.str());