aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/Basic/Targets.cpp2
-rw-r--r--lib/Driver/Tools.cpp2
-rw-r--r--test/Driver/clang-translation.c17
3 files changed, 21 insertions, 0 deletions
diff --git a/lib/Basic/Targets.cpp b/lib/Basic/Targets.cpp
index a02ad6d38d..3720d47e55 100644
--- a/lib/Basic/Targets.cpp
+++ b/lib/Basic/Targets.cpp
@@ -641,6 +641,8 @@ public:
.Case("970", true)
.Case("g5", true)
.Case("a2", true)
+ .Case("e500mc", true)
+ .Case("e5500", true)
.Case("pwr6", true)
.Case("pwr7", true)
.Case("ppc", true)
diff --git a/lib/Driver/Tools.cpp b/lib/Driver/Tools.cpp
index 63182f8c28..960ffde228 100644
--- a/lib/Driver/Tools.cpp
+++ b/lib/Driver/Tools.cpp
@@ -968,6 +968,8 @@ static std::string getPPCTargetCPU(const ArgList &Args) {
.Case("970", "970")
.Case("G5", "g5")
.Case("a2", "a2")
+ .Case("e500mc", "e500mc")
+ .Case("e5500", "e5500")
.Case("power6", "pwr6")
.Case("power7", "pwr7")
.Case("powerpc", "ppc")
diff --git a/test/Driver/clang-translation.c b/test/Driver/clang-translation.c
index 76196da9fc..6f30039814 100644
--- a/test/Driver/clang-translation.c
+++ b/test/Driver/clang-translation.c
@@ -74,3 +74,20 @@
// PPC64NS: clang
// PPC64NS: "-cc1"
// PPC64NS: "-target-cpu" "ppc64"
+
+// RUN: %clang -ccc-clang-archs powerpc \
+// RUN: -target powerpc-fsl-linux -### -S %s 2> %t.log \
+// RUN: -mcpu=e500mc
+// RUN: FileCheck -check-prefix=PPCE500MC %s < %t.log
+// PPCE500MC: clang
+// PPCE500MC: "-cc1"
+// PPCE500MC: "-target-cpu" "e500mc"
+
+// RUN: %clang -ccc-clang-archs powerpc64 \
+// RUN: -target powerpc64-fsl-linux -### -S %s 2> %t.log \
+// RUN: -mcpu=e5500
+// RUN: FileCheck -check-prefix=PPCE5500 %s < %t.log
+// PPCE5500: clang
+// PPCE5500: "-cc1"
+// PPCE5500: "-target-cpu" "e5500"
+