]> CyberLeo.Net >> Repos - FreeBSD/releng/10.2.git/blob - contrib/llvm/patches/patch-r269387-clang-arm-target-cpu.diff
- Copy stable/10@285827 to releng/10.2 in preparation for 10.2-RC1
[FreeBSD/releng/10.2.git] / contrib / llvm / patches / patch-r269387-clang-arm-target-cpu.diff
1 Update the ARMv6 core clang targets to be an arm1176jzf-s. This brings us
2 in line with gcc in base as this makes llvm generate code for the armv6k
3 variant of the instruction set.
4
5 Introduced here: http://svnweb.freebsd.org/changeset/base/269387
6
7 Index: tools/clang/lib/Driver/ToolChain.cpp
8 ===================================================================
9 --- tools/clang/lib/Driver/ToolChain.cpp        (revision 269386)
10 +++ tools/clang/lib/Driver/ToolChain.cpp        (revision 269387)
11 @@ -183,7 +183,8 @@ static const char *getARMTargetCPU(const ArgList &
12      MArch = Triple.getArchName();
13    }
14  
15 -  if (Triple.getOS() == llvm::Triple::NetBSD) {
16 +  if (Triple.getOS() == llvm::Triple::NetBSD ||
17 +      Triple.getOS() == llvm::Triple::FreeBSD) {
18      if (MArch == "armv6")
19        return "arm1176jzf-s";
20    }
21 Index: tools/clang/lib/Driver/Tools.cpp
22 ===================================================================
23 --- tools/clang/lib/Driver/Tools.cpp    (revision 269386)
24 +++ tools/clang/lib/Driver/Tools.cpp    (revision 269387)
25 @@ -499,7 +499,8 @@ static std::string getARMTargetCPU(const ArgList &
26      MArch = Triple.getArchName();
27    }
28  
29 -  if (Triple.getOS() == llvm::Triple::NetBSD) {
30 +  if (Triple.getOS() == llvm::Triple::NetBSD ||
31 +      Triple.getOS() == llvm::Triple::FreeBSD) {
32      if (MArch == "armv6")
33        return "arm1176jzf-s";
34    }