@@ -54,6 +54,8 @@ StringRef Triple::getArchTypeName(ArchType Kind) {
5454 case msp430: return " msp430" ;
5555 case nvptx64: return " nvptx64" ;
5656 case nvptx: return " nvptx" ;
57+ case nvsass:
58+ return " nvsass" ;
5759 case ppc64: return " powerpc64" ;
5860 case ppc64le: return " powerpc64le" ;
5961 case ppc: return " powerpc" ;
@@ -242,6 +244,9 @@ StringRef Triple::getArchTypePrefix(ArchType Kind) {
242244 case wasm32:
243245 case wasm64: return " wasm" ;
244246
247+ case nvsass:
248+ return " nvsass" ;
249+
245250 case riscv32:
246251 case riscv64:
247252 case riscv32be:
@@ -486,6 +491,7 @@ Triple::ArchType Triple::getArchTypeForLLVMName(StringRef Name) {
486491 .Case (" xcore" , xcore)
487492 .Case (" nvptx" , nvptx)
488493 .Case (" nvptx64" , nvptx64)
494+ .Case (" nvsass" , nvsass)
489495 .Case (" amdil" , amdil)
490496 .Case (" amdil64" , amdil64)
491497 .Case (" hsail" , hsail)
@@ -627,6 +633,7 @@ static Triple::ArchType parseArch(StringRef ArchName) {
627633 .Case (" xcore" , Triple::xcore)
628634 .Case (" nvptx" , Triple::nvptx)
629635 .Case (" nvptx64" , Triple::nvptx64)
636+ .Case (" nvsass" , Triple::nvsass)
630637 .Case (" amdil" , Triple::amdil)
631638 .Case (" amdil64" , Triple::amdil64)
632639 .Case (" hsail" , Triple::hsail)
@@ -985,6 +992,7 @@ static Triple::ObjectFormatType getDefaultFormat(const Triple &T) {
985992 case Triple::msp430:
986993 case Triple::nvptx64:
987994 case Triple::nvptx:
995+ case Triple::nvsass:
988996 case Triple::ppc64le:
989997 case Triple::ppcle:
990998 case Triple::r600:
@@ -1745,6 +1753,9 @@ unsigned Triple::getArchPointerBitWidth(llvm::Triple::ArchType Arch) {
17451753 case llvm::Triple::mips64:
17461754 case llvm::Triple::mips64el:
17471755 case llvm::Triple::nvptx64:
1756+ // nvsass can represent both 32- and 64-bit pointers, but assume
1757+ // 64-bit for the triple
1758+ case llvm::Triple::nvsass:
17481759 case llvm::Triple::ppc64:
17491760 case llvm::Triple::ppc64le:
17501761 case llvm::Triple::renderscript64:
@@ -1823,6 +1834,7 @@ Triple Triple::get32BitArchVariant() const {
18231834 case Triple::mips:
18241835 case Triple::mipsel:
18251836 case Triple::nvptx:
1837+ case Triple::nvsass:
18261838 case Triple::ppc:
18271839 case Triple::ppcle:
18281840 case Triple::r600:
@@ -1910,6 +1922,7 @@ Triple Triple::get64BitArchVariant() const {
19101922 case Triple::mips64:
19111923 case Triple::mips64el:
19121924 case Triple::nvptx64:
1925+ case Triple::nvsass:
19131926 case Triple::ppc64:
19141927 case Triple::ppc64le:
19151928 case Triple::renderscript64:
@@ -1980,6 +1993,7 @@ Triple Triple::getBigEndianArchVariant() const {
19801993 case Triple::msp430:
19811994 case Triple::nvptx64:
19821995 case Triple::nvptx:
1996+ case Triple::nvsass:
19831997 case Triple::r600:
19841998 case Triple::renderscript32:
19851999 case Triple::renderscript64:
@@ -2095,6 +2109,7 @@ bool Triple::isLittleEndian() const {
20952109 case Triple::msp430:
20962110 case Triple::nvptx64:
20972111 case Triple::nvptx:
2112+ case Triple::nvsass:
20982113 case Triple::ppcle:
20992114 case Triple::ppc64le:
21002115 case Triple::r600:
0 commit comments