summaryrefslogtreecommitdiffstats
path: root/clang/lib/Driver/Tools.cpp
diff options
context:
space:
mode:
authorJoerg Sonnenberger <joerg@bec.de>2014-08-14 19:12:41 +0000
committerJoerg Sonnenberger <joerg@bec.de>2014-08-14 19:12:41 +0000
commitb704534233564158bf78d4c4af22d8a5253af993 (patch)
treeb38813db2c50cdfa42c33f593eb6ab3e6f0d4dbe /clang/lib/Driver/Tools.cpp
parent2d4b5129ed6fae3d8c80f886a80f047dac4a488e (diff)
downloadbcm5719-llvm-b704534233564158bf78d4c4af22d8a5253af993.tar.gz
bcm5719-llvm-b704534233564158bf78d4c4af22d8a5253af993.zip
Use the big endian emulations for NetBSD/arm in EB mode.
llvm-svn: 215670
Diffstat (limited to 'clang/lib/Driver/Tools.cpp')
-rw-r--r--clang/lib/Driver/Tools.cpp19
1 files changed, 17 insertions, 2 deletions
diff --git a/clang/lib/Driver/Tools.cpp b/clang/lib/Driver/Tools.cpp
index 1c2a3f48e8e..9e10b623a63 100644
--- a/clang/lib/Driver/Tools.cpp
+++ b/clang/lib/Driver/Tools.cpp
@@ -6785,9 +6785,7 @@ void netbsd::Link::ConstructJob(Compilation &C, const JobAction &JA,
CmdArgs.push_back("elf_i386");
break;
case llvm::Triple::arm:
- case llvm::Triple::armeb:
case llvm::Triple::thumb:
- case llvm::Triple::thumbeb:
CmdArgs.push_back("-m");
switch (getToolChain().getTriple().getEnvironment()) {
case llvm::Triple::EABI:
@@ -6803,6 +6801,23 @@ void netbsd::Link::ConstructJob(Compilation &C, const JobAction &JA,
break;
}
break;
+ case llvm::Triple::armeb:
+ case llvm::Triple::thumbeb:
+ CmdArgs.push_back("-m");
+ switch (getToolChain().getTriple().getEnvironment()) {
+ case llvm::Triple::EABI:
+ case llvm::Triple::GNUEABI:
+ CmdArgs.push_back("armelfb_nbsd_eabi");
+ break;
+ case llvm::Triple::EABIHF:
+ case llvm::Triple::GNUEABIHF:
+ CmdArgs.push_back("armelfb_nbsd_eabihf");
+ break;
+ default:
+ CmdArgs.push_back("armelfb_nbsd");
+ break;
+ }
+ break;
case llvm::Triple::mips64:
case llvm::Triple::mips64el:
if (mips::hasMipsAbiArg(Args, "32")) {
OpenPOWER on IntegriCloud