summaryrefslogtreecommitdiffstats
path: root/contrib/llvm/patches
diff options
context:
space:
mode:
authordim <dim@FreeBSD.org>2015-02-02 20:05:52 +0000
committerdim <dim@FreeBSD.org>2015-02-02 20:05:52 +0000
commit54f475a481803dda7e9fcd95edd11d0c5f9a2bf1 (patch)
treeb87b93e156ba4992979e24af5c07a957ed2d2469 /contrib/llvm/patches
parent53c44a5b687121f37af6a2b5394997c9aba19641 (diff)
downloadFreeBSD-src-54f475a481803dda7e9fcd95edd11d0c5f9a2bf1.zip
FreeBSD-src-54f475a481803dda7e9fcd95edd11d0c5f9a2bf1.tar.gz
Belatedly add the clang patch corresponding to r277423.
Diffstat (limited to 'contrib/llvm/patches')
-rw-r--r--contrib/llvm/patches/patch-29-clang-add-mips-triples.diff33
-rw-r--r--contrib/llvm/patches/patch-30-llvm-r226664-aarch64-x18.diff (renamed from contrib/llvm/patches/patch-29-llvm-r226664-aarch64-x18.diff)0
-rw-r--r--contrib/llvm/patches/patch-31-clang-r227062-fixes-x18.diff (renamed from contrib/llvm/patches/patch-30-clang-r227062-fixes-x18.diff)0
3 files changed, 33 insertions, 0 deletions
diff --git a/contrib/llvm/patches/patch-29-clang-add-mips-triples.diff b/contrib/llvm/patches/patch-29-clang-add-mips-triples.diff
new file mode 100644
index 0000000..084c0a6
--- /dev/null
+++ b/contrib/llvm/patches/patch-29-clang-add-mips-triples.diff
@@ -0,0 +1,33 @@
+Allow clang to be built for mips/mips64 backend types by adding our mips
+triple ids
+
+This only allows testing and does not change the defaults for mips/mips64.
+They still build/use gcc by default.
+
+Differential Revision: https://reviews.freebsd.org/D1190
+Reviewed by: dim
+
+Introduced here: http://svnweb.freebsd.org/changeset/base/277423
+
+Index: tools/clang/lib/Driver/Tools.cpp
+===================================================================
+--- tools/clang/lib/Driver/Tools.cpp
++++ tools/clang/lib/Driver/Tools.cpp
+@@ -6592,6 +6592,17 @@ void freebsd::Link::ConstructJob(Compilation &C, c
+ 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());
diff --git a/contrib/llvm/patches/patch-29-llvm-r226664-aarch64-x18.diff b/contrib/llvm/patches/patch-30-llvm-r226664-aarch64-x18.diff
index 887d3aa..887d3aa 100644
--- a/contrib/llvm/patches/patch-29-llvm-r226664-aarch64-x18.diff
+++ b/contrib/llvm/patches/patch-30-llvm-r226664-aarch64-x18.diff
diff --git a/contrib/llvm/patches/patch-30-clang-r227062-fixes-x18.diff b/contrib/llvm/patches/patch-31-clang-r227062-fixes-x18.diff
index 4e2f956..4e2f956 100644
--- a/contrib/llvm/patches/patch-30-clang-r227062-fixes-x18.diff
+++ b/contrib/llvm/patches/patch-31-clang-r227062-fixes-x18.diff
OpenPOWER on IntegriCloud