arm, // ARM (little endian): arm, armv.*, xscale
armeb, // ARM (big endian): armeb
- arm64, // ARM: arm64
+ arm64, // ARM64 (little endian): arm64
+ arm64_be, // ARM64 (big endian): arm64_be
aarch64, // AArch64 (little endian): aarch64
aarch64_be, // AArch64 (big endian): aarch64_be
hexagon, // Hexagon: hexagon
case arm: return "arm";
case armeb: return "armeb";
case arm64: return "arm64";
+ case arm64_be: return "arm64_be";
case hexagon: return "hexagon";
case mips: return "mips";
case mipsel: return "mipsel";
case thumb:
case thumbeb: return "arm";
- case arm64: return "arm64";
+ case arm64:
+ case arm64_be: return "arm64";
case ppc64:
case ppc64le:
.Case("arm", arm)
.Case("armeb", armeb)
.Case("arm64", arm64)
+ .Case("arm64_be", arm64_be)
.Case("mips", mips)
.Case("mipsel", mipsel)
.Case("mips64", mips64)
.Cases("armv7", "thumbv7", "armv7")
.Case("armeb", "armeb")
.Case("arm64", "arm64")
+ .Case("arm64_be", "arm64")
.Case("r600", "r600")
.Case("nvptx", "nvptx")
.Case("nvptx64", "nvptx64")
.Case("thumbeb", Triple::thumbeb)
.StartsWith("thumbebv", Triple::thumbeb)
.Case("arm64", Triple::arm64)
+ .Case("arm64_be", Triple::arm64_be)
.Case("msp430", Triple::msp430)
.Cases("mips", "mipseb", "mipsallegrex", Triple::mips)
.Cases("mipsel", "mipsallegrexel", Triple::mipsel)
return 32;
case llvm::Triple::arm64:
+ case llvm::Triple::arm64_be:
case llvm::Triple::aarch64:
case llvm::Triple::aarch64_be:
case llvm::Triple::mips64:
case Triple::aarch64:
case Triple::aarch64_be:
case Triple::arm64:
+ case Triple::arm64_be:
case Triple::msp430:
case Triple::systemz:
case Triple::ppc64le:
case Triple::systemz:
case Triple::x86_64:
case Triple::arm64:
+ case Triple::arm64_be:
// Already 64-bit.
break;