Lines Matching refs:Feature
629 bool AArch64TargetInfo::hasFeature(StringRef Feature) const { in hasFeature()
630 return llvm::StringSwitch<bool>(Feature) in hasFeature()
712 for (const auto &Feature : Features) { in handleTargetFeatures() local
713 if (Feature == "-neon") in handleTargetFeatures()
715 if (Feature == "-sve") in handleTargetFeatures()
718 if (Feature == "+neon" || Feature == "+fp-armv8") in handleTargetFeatures()
720 if (Feature == "+jscvt") { in handleTargetFeatures()
724 if (Feature == "+fcma") { in handleTargetFeatures()
729 if (Feature == "+sve") { in handleTargetFeatures()
734 if (Feature == "+sve2") { in handleTargetFeatures()
740 if (Feature == "+sve2-aes") { in handleTargetFeatures()
747 if (Feature == "+sve2-sha3") { in handleTargetFeatures()
754 if (Feature == "+sve2-sm4") { in handleTargetFeatures()
761 if (Feature == "+sve2-bitperm") { in handleTargetFeatures()
768 if (Feature == "+f32mm") { in handleTargetFeatures()
774 if (Feature == "+f64mm") { in handleTargetFeatures()
780 if (Feature == "+sme") { in handleTargetFeatures()
784 if (Feature == "+sme-f64f64") { in handleTargetFeatures()
789 if (Feature == "+sme-i16i64") { in handleTargetFeatures()
794 if (Feature == "+sb") in handleTargetFeatures()
796 if (Feature == "+predres") in handleTargetFeatures()
798 if (Feature == "+ssbs") in handleTargetFeatures()
800 if (Feature == "+bti") in handleTargetFeatures()
802 if (Feature == "+wfxt") in handleTargetFeatures()
804 if (Feature == "-fmv") in handleTargetFeatures()
806 if (Feature == "+crc") in handleTargetFeatures()
808 if (Feature == "+rcpc") in handleTargetFeatures()
810 if (Feature == "+aes") { in handleTargetFeatures()
814 if (Feature == "+sha2") { in handleTargetFeatures()
818 if (Feature == "+sha3") { in handleTargetFeatures()
823 if (Feature == "+rdm") { in handleTargetFeatures()
827 if (Feature == "+dit") in handleTargetFeatures()
829 if (Feature == "+cccp") in handleTargetFeatures()
831 if (Feature == "+ccdp") { in handleTargetFeatures()
835 if (Feature == "+fptoint") in handleTargetFeatures()
837 if (Feature == "+sm4") { in handleTargetFeatures()
841 if (Feature == "+strict-align") in handleTargetFeatures()
844 if (Feature == "+v8a" && ArchInfo->Version < llvm::AArch64::ARMV8A.Version) in handleTargetFeatures()
846 if (Feature == "+v8.1a" && in handleTargetFeatures()
849 if (Feature == "+v8.2a" && in handleTargetFeatures()
852 if (Feature == "+v8.3a" && in handleTargetFeatures()
855 if (Feature == "+v8.4a" && in handleTargetFeatures()
858 if (Feature == "+v8.5a" && in handleTargetFeatures()
861 if (Feature == "+v8.6a" && in handleTargetFeatures()
864 if (Feature == "+v8.7a" && in handleTargetFeatures()
867 if (Feature == "+v8.8a" && in handleTargetFeatures()
870 if (Feature == "+v8.9a" && in handleTargetFeatures()
873 if (Feature == "+v9a" && ArchInfo->Version < llvm::AArch64::ARMV9A.Version) in handleTargetFeatures()
875 if (Feature == "+v9.1a" && in handleTargetFeatures()
878 if (Feature == "+v9.2a" && in handleTargetFeatures()
881 if (Feature == "+v9.3a" && in handleTargetFeatures()
884 if (Feature == "+v9.4a" && in handleTargetFeatures()
887 if (Feature == "+v8r") in handleTargetFeatures()
889 if (Feature == "+fullfp16") { in handleTargetFeatures()
893 if (Feature == "+dotprod") { in handleTargetFeatures()
897 if (Feature == "+fp16fml") { in handleTargetFeatures()
902 if (Feature == "+mte") in handleTargetFeatures()
904 if (Feature == "+tme") in handleTargetFeatures()
906 if (Feature == "+pauth") in handleTargetFeatures()
908 if (Feature == "+i8mm") in handleTargetFeatures()
910 if (Feature == "+bf16") in handleTargetFeatures()
912 if (Feature == "+lse") in handleTargetFeatures()
914 if (Feature == "+ls64") in handleTargetFeatures()
916 if (Feature == "+rand") in handleTargetFeatures()
918 if (Feature == "+flagm") in handleTargetFeatures()
920 if (Feature == "+altnzcv") { in handleTargetFeatures()
924 if (Feature == "+mops") in handleTargetFeatures()
926 if (Feature == "+d128") in handleTargetFeatures()
933 for (const auto &Feature : Features) { in handleTargetFeatures() local
934 if (Feature == "-d128") in handleTargetFeatures()
971 for (const auto &Feature : FeaturesVec) in initFeatureMap() local
972 if ((Feature[0] == '?' || Feature[0] == '+')) { in initFeatureMap()
974 if (AArch64TargetInfo::getFeatureDepOptions(Feature.substr(1), Options)) { in initFeatureMap()
981 for (const auto &Feature : FeaturesVec) in initFeatureMap() local
982 if (Feature[0] == '+') { in initFeatureMap()
984 llvm::AArch64::getFeatureOption(Feature, F); in initFeatureMap()
986 } else if (Feature[0] != '?') in initFeatureMap()
987 UpdatedFeaturesVec.push_back(Feature); in initFeatureMap()
1010 for (StringRef Feature : SplitFeatures) { in parseTargetAttr() local
1011 StringRef FeatureName = llvm::AArch64::getArchExtFeature(Feature); in parseTargetAttr()
1017 if (Feature.startswith("no")) in parseTargetAttr()
1018 Features.push_back("-" + Feature.drop_front(2).str()); in parseTargetAttr()
1020 Features.push_back("+" + Feature.str()); in parseTargetAttr()
1024 for (auto &Feature : AttrFeatures) { in parseTargetAttr() local
1025 Feature = Feature.trim(); in parseTargetAttr()
1026 if (Feature.startswith("fpmath=")) in parseTargetAttr()
1029 if (Feature.startswith("branch-protection=")) { in parseTargetAttr()
1030 Ret.BranchProtection = Feature.split('=').second.trim(); in parseTargetAttr()
1034 if (Feature.startswith("arch=")) { in parseTargetAttr()
1039 Feature.split("=").second.trim().split("+"); in parseTargetAttr()
1049 } else if (Feature.startswith("cpu=")) { in parseTargetAttr()
1056 Feature.split("=").second.trim().split("+"); in parseTargetAttr()
1060 } else if (Feature.startswith("tune=")) { in parseTargetAttr()
1064 Ret.Tune = Feature.split("=").second.trim(); in parseTargetAttr()
1065 } else if (Feature.startswith("+")) { in parseTargetAttr()
1066 SplitAndAddFeatures(Feature, Ret.Features); in parseTargetAttr()
1067 } else if (Feature.startswith("no-")) { in parseTargetAttr()
1069 llvm::AArch64::getArchExtFeature(Feature.split("-").second); in parseTargetAttr()
1073 Ret.Features.push_back("-" + Feature.split("-").second.str()); in parseTargetAttr()
1078 StringRef FeatureName = llvm::AArch64::getArchExtFeature(Feature); in parseTargetAttr()
1082 Ret.Features.push_back("+" + Feature.str()); in parseTargetAttr()