Go to the documentation of this file.
31 constexpr GPUInfo R600GPUs[] = {
64 constexpr GPUInfo AMDGCNGPUs[] = {
130 return A.Kind <
B.Kind;
133 if (
I == Table.
end())
141 if (
const auto *Entry = getArchEntry(AK, AMDGCNGPUs))
142 return Entry->CanonicalName;
147 if (
const auto *Entry = getArchEntry(AK, R600GPUs))
148 return Entry->CanonicalName;
153 for (
const auto &
C : AMDGCNGPUs) {
162 for (
const auto &
C : R600GPUs) {
171 if (
const auto *Entry = getArchEntry(AK, AMDGCNGPUs))
172 return Entry->Features;
177 if (
const auto *Entry = getArchEntry(AK, R600GPUs))
178 return Entry->Features;
184 for (
const auto &
C : AMDGCNGPUs)
185 Values.push_back(
C.Name);
189 for (
const auto &
C : R600GPUs)
190 Values.push_back(
C.Name);
196 if (GPU ==
"generic-hsa")
198 if (GPU ==
"generic")
242 default:
return {0, 0, 0};
This is an optimization pass for GlobalISel generic memory operations.
GPUKind
GPU kinds supported by the AMDGPU target.
unsigned getArchAttrR600(GPUKind AK)
IsaVersion getIsaVersion(StringRef GPU)
auto lower_bound(R &&Range, T &&Value)
Provide wrappers to std::lower_bound which take ranges instead of having to pass begin/end explicitly...
GPUKind parseArchR600(StringRef CPU)
Triple - Helper class for working with autoconf configuration names.
Instruction set architecture version.
StringRef getCanonicalArchName(const Triple &T, StringRef Arch)
A wrapper around a string literal that serves as a proxy for constructing global tables of StringRefs...
(vector float) vec_cmpeq(*A, *B) C
static GCRegistry::Add< OcamlGC > B("ocaml", "ocaml 3.10-compatible GC")
StringRef getArchNameAMDGCN(GPUKind AK)
assert(ImpDefSCC.getReg()==AMDGPU::SCC &&ImpDefSCC.isDef())
ArrayRef - Represent a constant reference to an array (0 or more elements consecutively in memory),...
StringRef - Represent a constant reference to a string, i.e.
StringRef getArchNameR600(GPUKind AK)
void fillValidArchListR600(SmallVectorImpl< StringRef > &Values)
GPUKind parseArchAMDGCN(StringRef CPU)
unsigned getArchAttrAMDGCN(GPUKind AK)
@ FEATURE_FAST_DENORMAL_F32
void fillValidArchListAMDGCN(SmallVectorImpl< StringRef > &Values)