14 #ifndef NVPTXSUBTARGET_H
15 #define NVPTXSUBTARGET_H
20 #define GET_SUBTARGETINFO_HEADER
21 #include "NVPTXGenSubtargetInfo.inc"
28 virtual void anchor();
29 std::string TargetName;
37 unsigned int SmVersion;
46 bool hasBrkPt()
const {
return SmVersion >= 11; }
54 bool hasVote()
const {
return SmVersion >= 12; }
56 bool reqPTX20()
const {
return SmVersion >= 20; }
60 bool hasLDG()
const {
return SmVersion >= 32; }
61 bool hasLDU()
const {
return SmVersion >= 20; }
66 inline bool hasROT64()
const {
return SmVersion >= 20; }
81 p =
"e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-"
82 "f32:32:32-f64:64:64-v16:16:16-v32:32:32-v64:64:64-v128:128:128-"
85 p =
"e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-"
86 "f32:32:32-f64:64:64-v16:16:16-v32:32:32-v64:64:64-v128:128:128-"
89 return std::string(p);
96 #endif // NVPTXSUBTARGET_H
std::string getDataLayout() const
bool hasAtomAddF32() const
void ParseSubtargetFeatures(StringRef CPU, StringRef FS)
bool hasAtomRedS64() const
bool hasAtomRedG64() const
unsigned int getSmVersion() const
bool hasGenericLdSt() const
NVPTX::DrvInterface getDrvInterface() const
NVPTXSubtarget(const std::string &TT, const std::string &CPU, const std::string &FS, bool is64Bit)
bool hasAtomRedGen64() const
bool hasAtomRedGen32() const
std::string getTargetName() const
bool hasAtomRedG32() const
bool hasAtomRedS32() const
unsigned getPTXVersion() const