diff options
Diffstat (limited to 'contrib/llvm/patches/patch-r262262-clang-r199012-sparc.diff')
-rw-r--r-- | contrib/llvm/patches/patch-r262262-clang-r199012-sparc.diff | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/contrib/llvm/patches/patch-r262262-clang-r199012-sparc.diff b/contrib/llvm/patches/patch-r262262-clang-r199012-sparc.diff new file mode 100644 index 0000000..7bc4a78 --- /dev/null +++ b/contrib/llvm/patches/patch-r262262-clang-r199012-sparc.diff @@ -0,0 +1,41 @@ +Pull in r199012 from upstream clang trunk (by Jakob Stoklund Olesen): + + Select the UltraSPARC instruction set when invoking the assembler. + +Introduced here: http://svn.freebsd.org/changeset/base/262262 + +Index: tools/clang/lib/Driver/Tools.cpp +=================================================================== +--- tools/clang/lib/Driver/Tools.cpp ++++ tools/clang/lib/Driver/Tools.cpp +@@ -6228,8 +6228,10 @@ void gnutools::Assemble::ConstructJob(Compilation + CmdArgs.push_back("-many"); + } else if (getToolChain().getArch() == llvm::Triple::sparc) { + CmdArgs.push_back("-32"); ++ CmdArgs.push_back("-Av8plusa"); + } else if (getToolChain().getArch() == llvm::Triple::sparcv9) { + CmdArgs.push_back("-64"); ++ CmdArgs.push_back("-Av9a"); + } else if (getToolChain().getArch() == llvm::Triple::arm) { + StringRef MArch = getToolChain().getArchName(); + if (MArch == "armv7" || MArch == "armv7a" || MArch == "armv7-a") +Index: tools/clang/test/Driver/linux-as.c +=================================================================== +--- tools/clang/test/Driver/linux-as.c ++++ tools/clang/test/Driver/linux-as.c +@@ -65,6 +65,7 @@ + // RUN: | FileCheck -check-prefix=CHECK-SPARCV9 %s + // CHECK-SPARCV9: as + // CHECK-SPARCV9: -64 ++// CHECK-SPARCV9: -Av9a + // CHECK-SPARCV9: -o + // + // RUN: %clang -target sparc-linux -mcpu=invalid-cpu -### \ +@@ -72,6 +73,7 @@ + // RUN: | FileCheck -check-prefix=CHECK-SPARCV8 %s + // CHECK-SPARCV8: as + // CHECK-SPARCV8: -32 ++// CHECK-SPARCV8: -Av8plusa + // CHECK-SPARCV8: -o + // + // RUN: %clang -target s390x-linux -### -no-integrated-as -c %s 2>&1 \ |