diff options
Diffstat (limited to 'lib/Support/Triple.cpp')
-rw-r--r-- | lib/Support/Triple.cpp | 26 |
1 files changed, 21 insertions, 5 deletions
diff --git a/lib/Support/Triple.cpp b/lib/Support/Triple.cpp index 412e34ccc5..c9729b5412 100644 --- a/lib/Support/Triple.cpp +++ b/lib/Support/Triple.cpp @@ -160,10 +160,22 @@ Triple::ArchType Triple::getArchTypeForLLVMName(StringRef Name) { return StringSwitch<Triple::ArchType>(Name) .Case("aarch64", aarch64) .Case("arm", arm) + .Case("armeb", arm) + .Case("armel", arm) .Case("mips", mips) .Case("mipsel", mipsel) + .Case("mipsisa32", mips) + .Case("mipsisa32el", mipsel) + .Case("mipsisa32r2", mips) + .Case("mipsisa32r2el", mipsel) .Case("mips64", mips64) .Case("mips64el", mips64el) + .Case("mipsisa64", mips64) + .Case("mipsisa64el", mips64el) + .Case("mipsisa64r2", mips64) + .Case("mipsisa64r2el", mips64el) + .Case("mips64octeon", mips64) + .Case("mips64octeonel", mips64el) .Case("msp430", msp430) .Case("ppc64", ppc64) .Case("ppc32", ppc) @@ -224,17 +236,17 @@ static Triple::ArchType parseArch(StringRef ArchName) { .Cases("powerpc64", "ppu", Triple::ppc64) .Case("mblaze", Triple::mblaze) .Case("aarch64", Triple::aarch64) - .Cases("arm", "xscale", Triple::arm) + .Cases("arm", "armeb", "armel", "xscale", Triple::arm) // FIXME: It would be good to replace these with explicit names for all the // various suffixes supported. .StartsWith("armv", Triple::arm) .Case("thumb", Triple::thumb) .StartsWith("thumbv", Triple::thumb) .Case("msp430", Triple::msp430) - .Cases("mips", "mipseb", "mipsallegrex", Triple::mips) - .Cases("mipsel", "mipsallegrexel", Triple::mipsel) - .Cases("mips64", "mips64eb", Triple::mips64) - .Case("mips64el", Triple::mips64el) + .Cases("mips", "mipseb", "mipsisa32", "mipsisa32r2", "mipsallegrex", Triple::mips) + .Cases("mipsel", "mipsisa32el", "mipsisa32r2el", "mipsallegrexel", Triple::mipsel) + .Cases("mips64", "mips64eb", "mipsisa64", "mipsisa64r2", "mips64octeon", Triple::mips64) + .Cases("mips64el", "mipsisa64el", "mipsisa64r2el", "mips64octeonel", Triple::mips64el) .Case("r600", Triple::r600) .Case("hexagon", Triple::hexagon) .Case("s390x", Triple::systemz) @@ -295,8 +307,12 @@ static Triple::EnvironmentType parseEnvironment(StringRef EnvironmentName) { .StartsWith("eabi", Triple::EABI) .StartsWith("gnueabihf", Triple::GNUEABIHF) .StartsWith("gnueabi", Triple::GNUEABI) + .StartsWith("uclibceabi", Triple::GNUEABI) + .StartsWith("musleabi", Triple::GNUEABI) .StartsWith("gnux32", Triple::GNUX32) .StartsWith("gnu", Triple::GNU) + .StartsWith("uclibc", Triple::GNU) + .StartsWith("musl", Triple::GNU) .StartsWith("macho", Triple::MachO) .StartsWith("android", Triple::Android) .StartsWith("elf", Triple::ELF) |