diff options
author | dim <dim@FreeBSD.org> | 2015-01-25 23:43:12 +0000 |
---|---|---|
committer | dim <dim@FreeBSD.org> | 2015-01-25 23:43:12 +0000 |
commit | 26ab20c8dc70a806abf158a557db896c283ac441 (patch) | |
tree | f358c5333ff6b8e93e1f4fd1f739daeedb61448d /contrib/llvm/tools/clang/lib/Driver | |
parent | 7db7b571b9ca5f0f069fd72715b1e2d05940dc75 (diff) | |
parent | 588a6eb29f37c0081497dc155776215a84099f02 (diff) | |
download | FreeBSD-src-26ab20c8dc70a806abf158a557db896c283ac441.zip FreeBSD-src-26ab20c8dc70a806abf158a557db896c283ac441.tar.gz |
Merge ^/head r277327 through r277718.
Diffstat (limited to 'contrib/llvm/tools/clang/lib/Driver')
-rw-r--r-- | contrib/llvm/tools/clang/lib/Driver/Tools.cpp | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/contrib/llvm/tools/clang/lib/Driver/Tools.cpp b/contrib/llvm/tools/clang/lib/Driver/Tools.cpp index d625c0e..86c6ac1 100644 --- a/contrib/llvm/tools/clang/lib/Driver/Tools.cpp +++ b/contrib/llvm/tools/clang/lib/Driver/Tools.cpp @@ -6632,6 +6632,17 @@ void freebsd::Link::ConstructJob(Compilation &C, const JobAction &JA, CmdArgs.push_back("elf32ppc_fbsd"); } + if (Arg *A = Args.getLastArg(options::OPT_G)) { + if (ToolChain.getArch() == llvm::Triple::mips || + ToolChain.getArch() == llvm::Triple::mipsel || + ToolChain.getArch() == llvm::Triple::mips64 || + ToolChain.getArch() == llvm::Triple::mips64el) { + StringRef v = A->getValue(); + CmdArgs.push_back(Args.MakeArgString("-G" + v)); + A->claim(); + } + } + if (Output.isFilename()) { CmdArgs.push_back("-o"); CmdArgs.push_back(Output.getFilename()); |