summaryrefslogtreecommitdiffstats
path: root/contrib/llvm/patches/patch-r269387-clang-arm-target-cpu.diff
blob: fea76a1cebeda050383cc6b09345048a65bcd2d5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
Update the ARMv6 core clang targets to be an arm1176jzf-s. This brings us
in line with gcc in base as this makes llvm generate code for the armv6k
variant of the instruction set.

Introduced here: http://svnweb.freebsd.org/changeset/base/269387

Index: tools/clang/lib/Driver/ToolChain.cpp
===================================================================
--- tools/clang/lib/Driver/ToolChain.cpp	(revision 269386)
+++ tools/clang/lib/Driver/ToolChain.cpp	(revision 269387)
@@ -183,7 +183,8 @@ static const char *getARMTargetCPU(const ArgList &
     MArch = Triple.getArchName();
   }
 
-  if (Triple.getOS() == llvm::Triple::NetBSD) {
+  if (Triple.getOS() == llvm::Triple::NetBSD ||
+      Triple.getOS() == llvm::Triple::FreeBSD) {
     if (MArch == "armv6")
       return "arm1176jzf-s";
   }
Index: tools/clang/lib/Driver/Tools.cpp
===================================================================
--- tools/clang/lib/Driver/Tools.cpp	(revision 269386)
+++ tools/clang/lib/Driver/Tools.cpp	(revision 269387)
@@ -499,7 +499,8 @@ static std::string getARMTargetCPU(const ArgList &
     MArch = Triple.getArchName();
   }
 
-  if (Triple.getOS() == llvm::Triple::NetBSD) {
+  if (Triple.getOS() == llvm::Triple::NetBSD ||
+      Triple.getOS() == llvm::Triple::FreeBSD) {
     if (MArch == "armv6")
       return "arm1176jzf-s";
   }
OpenPOWER on IntegriCloud