diff options
Diffstat (limited to 'llvm/lib/Support/Triple.cpp')
| -rw-r--r-- | llvm/lib/Support/Triple.cpp | 19 |
1 files changed, 18 insertions, 1 deletions
diff --git a/llvm/lib/Support/Triple.cpp b/llvm/lib/Support/Triple.cpp index 4f483c965282..88311546354b 100644 --- a/llvm/lib/Support/Triple.cpp +++ b/llvm/lib/Support/Triple.cpp @@ -44,6 +44,7 @@ StringRef Triple::getArchTypeName(ArchType Kind) { case lanai: return "lanai"; case le32: return "le32"; case le64: return "le64"; + case m68k: return "m68k"; case mips64: return "mips64"; case mips64el: return "mips64el"; case mips: return "mips"; @@ -105,6 +106,8 @@ StringRef Triple::getArchTypePrefix(ArchType Kind) { case ppc: case ppcle: return "ppc"; + case m68k: return "m68k"; + case mips: case mipsel: case mips64: @@ -247,6 +250,7 @@ StringRef Triple::getEnvironmentTypeName(EnvironmentType Kind) { case Musl: return "musl"; case MuslEABI: return "musleabi"; case MuslEABIHF: return "musleabihf"; + case MuslX32: return "muslx32"; case Simulator: return "simulator"; } @@ -281,6 +285,7 @@ Triple::ArchType Triple::getArchTypeForLLVMName(StringRef Name) { .Case("armeb", armeb) .Case("avr", avr) .StartsWith("bpf", BPFArch) + .Case("m68k", m68k) .Case("mips", mips) .Case("mipsel", mipsel) .Case("mips64", mips64) @@ -419,6 +424,7 @@ static Triple::ArchType parseArch(StringRef ArchName) { .Case("thumb", Triple::thumb) .Case("thumbeb", Triple::thumbeb) .Case("avr", Triple::avr) + .Case("m68k", Triple::m68k) .Case("msp430", Triple::msp430) .Cases("mips", "mipseb", "mipsallegrex", "mipsisa32r6", "mipsr6", Triple::mips) @@ -479,6 +485,7 @@ static Triple::VendorType parseVendor(StringRef VendorName) { .Case("apple", Triple::Apple) .Case("pc", Triple::PC) .Case("scei", Triple::SCEI) + .Case("sie", Triple::SCEI) .Case("fsl", Triple::Freescale) .Case("ibm", Triple::IBM) .Case("img", Triple::ImaginationTechnologies) @@ -549,6 +556,7 @@ static Triple::EnvironmentType parseEnvironment(StringRef EnvironmentName) { .StartsWith("android", Triple::Android) .StartsWith("musleabihf", Triple::MuslEABIHF) .StartsWith("musleabi", Triple::MuslEABI) + .StartsWith("muslx32", Triple::MuslX32) .StartsWith("musl", Triple::Musl) .StartsWith("msvc", Triple::MSVC) .StartsWith("itanium", Triple::Itanium) @@ -703,6 +711,7 @@ static Triple::ObjectFormatType getDefaultFormat(const Triple &T) { case Triple::lanai: case Triple::le32: case Triple::le64: + case Triple::m68k: case Triple::mips64: case Triple::mips64el: case Triple::mips: @@ -1276,6 +1285,7 @@ static unsigned getArchPointerBitWidth(llvm::Triple::ArchType Arch) { case llvm::Triple::kalimba: case llvm::Triple::lanai: case llvm::Triple::le32: + case llvm::Triple::m68k: case llvm::Triple::mips: case llvm::Triple::mipsel: case llvm::Triple::nvptx: @@ -1360,6 +1370,7 @@ Triple Triple::get32BitArchVariant() const { case Triple::kalimba: case Triple::lanai: case Triple::le32: + case Triple::m68k: case Triple::mips: case Triple::mipsel: case Triple::nvptx: @@ -1412,6 +1423,7 @@ Triple Triple::get64BitArchVariant() const { case Triple::hexagon: case Triple::kalimba: case Triple::lanai: + case Triple::m68k: case Triple::msp430: case Triple::r600: case Triple::shave: @@ -1536,6 +1548,7 @@ Triple Triple::getLittleEndianArchVariant() const { case Triple::lanai: case Triple::sparcv9: case Triple::systemz: + case Triple::m68k: // ARM is intentionally unsupported here, changing the architecture would // drop any arch suffixes. @@ -1698,10 +1711,14 @@ StringRef Triple::getARMCPUForArch(StringRef MArch) const { case llvm::Triple::NetBSD: if (!MArch.empty() && MArch == "v6") return "arm1176jzf-s"; + if (!MArch.empty() && MArch == "v7") + return "cortex-a8"; break; case llvm::Triple::Win32: // FIXME: this is invalid for WindowsCE - return "cortex-a9"; + if (ARM::parseArchVersion(MArch) <= 7) + return "cortex-a9"; + break; case llvm::Triple::IOS: case llvm::Triple::MacOSX: case llvm::Triple::TvOS: |
