Quick and dirty (!) fix to make sure we use powerpc in triples.
- PR3922
- I have a clean solution for this in flight, but it may take a while
to come to fruition so we'll take a quick fix for now.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@68241 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Driver/HostInfo.cpp b/lib/Driver/HostInfo.cpp
index 2ce06f5..8db18d4 100644
--- a/lib/Driver/HostInfo.cpp
+++ b/lib/Driver/HostInfo.cpp
@@ -77,7 +77,7 @@
: HostInfo(D, _Arch, _Platform, _OS) {
assert((getArchName() == "i386" || getArchName() == "x86_64" ||
- getArchName() == "ppc" || getArchName() == "ppc64") &&
+ getArchName() == "powerpc" || getArchName() == "powerpc64") &&
"Unknown Darwin arch.");
assert(memcmp(&getOSName()[0], "darwin", 6) == 0 &&
@@ -117,11 +117,17 @@
if (getArchName() == "i386" || getArchName() == "x86_64") {
ArchName =
(A->getOption().getId() == options::OPT_m32) ? "i386" : "x86_64";
- } else if (getArchName() == "ppc" || getArchName() == "ppc64") {
- ArchName =
- (A->getOption().getId() == options::OPT_m32) ? "ppc" : "ppc64";
+ } else if (getArchName() == "powerpc" || getArchName() == "powerpc64") {
+ ArchName = (A->getOption().getId() == options::OPT_m32) ? "powerpc" :
+ "powerpc64";
}
}
+ } else {
+ // Normalize arch name; we shouldn't be doing this here.
+ if (strcmp(ArchName, "ppc") == 0)
+ ArchName = "powerpc";
+ else if (strcmp(ArchName, "ppc64") == 0)
+ ArchName = "powerpc64";
}
ToolChain *&TC = ToolChains[ArchName];
@@ -190,9 +196,9 @@
if (getArchName() == "i386" || getArchName() == "x86_64") {
ArchName =
(A->getOption().getId() == options::OPT_m32) ? "i386" : "x86_64";
- } else if (getArchName() == "ppc" || getArchName() == "ppc64") {
+ } else if (getArchName() == "powerpc" || getArchName() == "powerpc64") {
ArchName =
- (A->getOption().getId() == options::OPT_m32) ? "ppc" : "ppc64";
+ (A->getOption().getId() == options::OPT_m32) ? "powerpc" : "powerpc64";
}
}