summaryrefslogtreecommitdiff
path: root/llvm/lib/Target/NVPTX/NVPTXSubtarget.h
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/lib/Target/NVPTX/NVPTXSubtarget.h')
-rw-r--r--llvm/lib/Target/NVPTX/NVPTXSubtarget.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/llvm/lib/Target/NVPTX/NVPTXSubtarget.h b/llvm/lib/Target/NVPTX/NVPTXSubtarget.h
index acf025b70ce3..0a77a633cb25 100644
--- a/llvm/lib/Target/NVPTX/NVPTXSubtarget.h
+++ b/llvm/lib/Target/NVPTX/NVPTXSubtarget.h
@@ -82,6 +82,7 @@ public:
bool hasAtomBitwise64() const { return SmVersion >= 32; }
bool hasAtomMinMax64() const { return SmVersion >= 32; }
bool hasAtomCas16() const { return SmVersion >= 70 && PTXVersion >= 63; }
+ bool hasAtomSwap128() const { return SmVersion >= 90 && PTXVersion >= 83; }
bool hasClusters() const { return SmVersion >= 90 && PTXVersion >= 78; }
bool hasLDG() const { return SmVersion >= 32; }
bool hasHWROT32() const { return SmVersion >= 32; }
@@ -105,6 +106,7 @@ public:
// Tcgen05 instructions in Blackwell family
bool hasTcgen05Instructions() const {
bool HasTcgen05 = false;
+ unsigned MinPTXVersion = 86;
switch (FullSmVersion) {
default:
break;
@@ -112,9 +114,13 @@ public:
case 1013: // sm_101a
HasTcgen05 = true;
break;
+ case 1033: // sm_103a
+ HasTcgen05 = true;
+ MinPTXVersion = 88;
+ break;
}
- return HasTcgen05 && PTXVersion >= 86;
+ return HasTcgen05 && PTXVersion >= MinPTXVersion;
}
// f32x2 instructions in Blackwell family
bool hasF32x2Instructions() const;