summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoerg Sonnenberger <joerg@bec.de>2013-12-05 21:07:29 +0000
committerJoerg Sonnenberger <joerg@bec.de>2013-12-05 21:07:29 +0000
commit1f94da5a9ba416f0e122e27e38bec29980127b45 (patch)
treee377ee39173545d6a1b060274984e9e74d2f24cd
parentf3077a29ce97c6af1b8ad66a83266c9330fc227c (diff)
downloadbcm5719-llvm-1f94da5a9ba416f0e122e27e38bec29980127b45.tar.gz
bcm5719-llvm-1f94da5a9ba416f0e122e27e38bec29980127b45.zip
Pass down the target CPU to the system assembler for NetBSD/ARM.
llvm-svn: 196532
-rw-r--r--clang/lib/Driver/Tools.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/clang/lib/Driver/Tools.cpp b/clang/lib/Driver/Tools.cpp
index 6e33e8f923a..8df2742e5f4 100644
--- a/clang/lib/Driver/Tools.cpp
+++ b/clang/lib/Driver/Tools.cpp
@@ -5975,6 +5975,13 @@ void netbsd::Assemble::ConstructJob(Compilation &C, const JobAction &JA,
if (getToolChain().getArch() == llvm::Triple::x86)
CmdArgs.push_back("--32");
+ // Pass the target CPU to GNU as for ARM, since the source code might
+ // not have the correct .cpu annotation.
+ if (getToolChain().getArch() == llvm::Triple::arm) {
+ std::string MArch(getARMTargetCPU(Args, getToolChain().getTriple()));
+ CmdArgs.push_back(Args.MakeArgString("-mcpu=" + MArch));
+ }
+
// Set byte order explicitly
if (getToolChain().getArch() == llvm::Triple::mips)
CmdArgs.push_back("-EB");
OpenPOWER on IntegriCloud