[PATCH] D14758: Handle ARMv7K as an alias, instead of fake architecture (NFC)

A. Skrobov via cfe-commits cfe-commits at lists.llvm.org
Tue Nov 17 14:34:41 PST 2015


tyomitch created this revision.
tyomitch added reviewers: t.p.northover, rengolin.
tyomitch added a subscriber: cfe-commits.
Herald added subscribers: rengolin, aemerson.

Clang-side update, corresponding to D14757

http://reviews.llvm.org/D14758

Files:
  lib/Driver/Tools.cpp

Index: lib/Driver/Tools.cpp
===================================================================
--- lib/Driver/Tools.cpp
+++ lib/Driver/Tools.cpp
@@ -6295,19 +6295,17 @@
 StringRef arm::getLLVMArchSuffixForARM(StringRef CPU, StringRef Arch,
                                        const llvm::Triple &Triple) {
   unsigned ArchKind;
+  if (Arch == "armv7k" || Arch == "thumbv7k")
+    return "v7k"; // In other cases, Cortex-A7 should resolve to ARMv7-A
   if (CPU == "generic") {
     std::string ARMArch = tools::arm::getARMArch(Arch, Triple);
     ArchKind = llvm::ARM::parseArch(ARMArch);
     if (ArchKind == llvm::ARM::AK_INVALID)
       // In case of generic Arch, i.e. "arm",
       // extract arch from default cpu of the Triple
       ArchKind = llvm::ARM::parseCPUArch(Triple.getARMCPUForArch(ARMArch));
   } else {
-    // FIXME: horrible hack to get around the fact that Cortex-A7 is only an
-    // armv7k triple if it's actually been specified via "-arch armv7k".
-    ArchKind = (Arch == "armv7k" || Arch == "thumbv7k")
-                          ? (unsigned)llvm::ARM::AK_ARMV7K
-                          : llvm::ARM::parseCPUArch(CPU);
+      ArchKind = llvm::ARM::parseCPUArch(CPU);
   }
   if (ArchKind == llvm::ARM::AK_INVALID)
     return "";


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D14758.40437.patch
Type: text/x-patch
Size: 1266 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20151117/e3c6edbd/attachment.bin>


More information about the cfe-commits mailing list