Lines Matching refs:llvm
19 static llvm::SmallVector<llvm::StringRef, 4>
20 getAllPossibleAMDGPUTargetIDFeatures(const llvm::Triple &T, in getAllPossibleAMDGPUTargetIDFeatures()
21 llvm::StringRef Proc) { in getAllPossibleAMDGPUTargetIDFeatures()
23 llvm::SmallVector<llvm::StringRef, 4> Ret; in getAllPossibleAMDGPUTargetIDFeatures()
24 auto ProcKind = T.isAMDGCN() ? llvm::AMDGPU::parseArchAMDGCN(Proc) in getAllPossibleAMDGPUTargetIDFeatures()
25 : llvm::AMDGPU::parseArchR600(Proc); in getAllPossibleAMDGPUTargetIDFeatures()
26 if (ProcKind == llvm::AMDGPU::GK_NONE) in getAllPossibleAMDGPUTargetIDFeatures()
28 auto Features = T.isAMDGCN() ? llvm::AMDGPU::getArchAttrAMDGCN(ProcKind) in getAllPossibleAMDGPUTargetIDFeatures()
29 : llvm::AMDGPU::getArchAttrR600(ProcKind); in getAllPossibleAMDGPUTargetIDFeatures()
30 if (Features & llvm::AMDGPU::FEATURE_SRAMECC) in getAllPossibleAMDGPUTargetIDFeatures()
32 if (Features & llvm::AMDGPU::FEATURE_XNACK) in getAllPossibleAMDGPUTargetIDFeatures()
37 llvm::SmallVector<llvm::StringRef, 4>
38 getAllPossibleTargetIDFeatures(const llvm::Triple &T, in getAllPossibleTargetIDFeatures()
39 llvm::StringRef Processor) { in getAllPossibleTargetIDFeatures()
40 llvm::SmallVector<llvm::StringRef, 4> Ret; in getAllPossibleTargetIDFeatures()
47 static llvm::StringRef getCanonicalProcessorName(const llvm::Triple &T, in getCanonicalProcessorName()
48 llvm::StringRef Processor) { in getCanonicalProcessorName()
50 return llvm::AMDGPU::getCanonicalArchName(T, Processor); in getCanonicalProcessorName()
54 llvm::StringRef getProcessorFromTargetID(const llvm::Triple &T, in getProcessorFromTargetID()
55 llvm::StringRef TargetID) { in getProcessorFromTargetID()
66 static std::optional<llvm::StringRef>
67 parseTargetIDWithFormatCheckingOnly(llvm::StringRef TargetID, in parseTargetIDWithFormatCheckingOnly()
68 llvm::StringMap<bool> *FeatureMap) { in parseTargetIDWithFormatCheckingOnly()
69 llvm::StringRef Processor; in parseTargetIDWithFormatCheckingOnly()
72 return llvm::StringRef(); in parseTargetIDWithFormatCheckingOnly()
83 llvm::StringMap<bool> LocalFeatureMap; in parseTargetIDWithFormatCheckingOnly()
104 std::optional<llvm::StringRef>
105 parseTargetID(const llvm::Triple &T, llvm::StringRef TargetID, in parseTargetID()
106 llvm::StringMap<bool> *FeatureMap) { in parseTargetID()
113 llvm::StringRef Processor = getCanonicalProcessorName(T, *OptionalProcessor); in parseTargetID()
117 llvm::SmallSet<llvm::StringRef, 4> AllFeatures; in parseTargetID()
130 std::string getCanonicalTargetID(llvm::StringRef Processor, in getCanonicalTargetID()
131 const llvm::StringMap<bool> &Features) { in getCanonicalTargetID()
133 std::map<const llvm::StringRef, bool> OrderedMap; in getCanonicalTargetID()
144 std::optional<std::pair<llvm::StringRef, llvm::StringRef>>
145 getConflictTargetIDCombination(const std::set<llvm::StringRef> &TargetIDs) { in getConflictTargetIDCombination()
147 llvm::StringRef TargetID; in getConflictTargetIDCombination()
148 llvm::StringMap<bool> Features; in getConflictTargetIDCombination()
150 llvm::StringMap<Info> FeatureMap; in getConflictTargetIDCombination()
152 llvm::StringMap<bool> Features; in getConflictTargetIDCombination()
153 llvm::StringRef Proc = *parseTargetIDWithFormatCheckingOnly(ID, &Features); in getConflictTargetIDCombination()
159 if (llvm::any_of(Features, [&](auto &F) { in getConflictTargetIDCombination()
168 bool isCompatibleTargetID(llvm::StringRef Provided, llvm::StringRef Requested) { in isCompatibleTargetID()
169 llvm::StringMap<bool> ProvidedFeatures, RequestedFeatures; in isCompatibleTargetID()
170 llvm::StringRef ProvidedProc = in isCompatibleTargetID()
172 llvm::StringRef RequestedProc = in isCompatibleTargetID()