aboutsummaryrefslogtreecommitdiff
path: root/devel/llvm-devel/files
diff options
context:
space:
mode:
Diffstat (limited to 'devel/llvm-devel/files')
-rw-r--r--devel/llvm-devel/files/clang/patch-fformat_extensions.diff50
-rw-r--r--devel/llvm-devel/files/openmp/patch-bug3227911
-rw-r--r--devel/llvm-devel/files/ppc64-elfv2/patch-lib_Target_PowerPC_PPCTargetMachine.cpp23
-rw-r--r--devel/llvm-devel/files/ppc64-elfv2/patch-tools_clang_lib_Basic_Targets_PPC.h34
4 files changed, 65 insertions, 53 deletions
diff --git a/devel/llvm-devel/files/clang/patch-fformat_extensions.diff b/devel/llvm-devel/files/clang/patch-fformat_extensions.diff
index a4d2ecd90540..0950f939dedb 100644
--- a/devel/llvm-devel/files/clang/patch-fformat_extensions.diff
+++ b/devel/llvm-devel/files/clang/patch-fformat_extensions.diff
@@ -1,45 +1,11 @@
-diff -ruN tools/clang/include/clang/Basic/LangOptions.def tools/clang/include/clang/Basic/LangOptions.def
---- tools/clang/include/clang/Basic/LangOptions.def 2015-08-18 08:10:39 UTC
-+++ tools/clang/include/clang/Basic/LangOptions.def
-@@ -114,6 +114,7 @@
- LANGOPT(RTTIData , 1, 1, "emit run-time type information data")
- LANGOPT(MSBitfields , 1, 0, "Microsoft-compatible structure layout")
- LANGOPT(Freestanding, 1, 0, "freestanding implementation")
-+LANGOPT(FormatExtensions , 1, 0, "FreeBSD format extensions")
- LANGOPT(NoBuiltin , 1, 0, "disable builtin functions")
- LANGOPT(NoMathBuiltin , 1, 0, "disable math builtin functions")
- LANGOPT(GNUAsm , 1, 1, "GNU-style inline assembly")
-diff -ruN tools/clang/include/clang/Driver/Options.td tools/clang/include/clang/Driver/Options.td
---- tools/clang/include/clang/Driver/Options.td 2015-08-18 08:10:39 UTC
-+++ tools/clang/include/clang/Driver/Options.td
-@@ -660,6 +660,8 @@
+--- tools/clang/include/clang/Driver/Options.td.orig 2019-10-21 21:45:02.000000000 +0100
++++ tools/clang/include/clang/Driver/Options.td 2019-10-22 00:00:39.833390000 +0100
+@@ -1186,6 +1186,8 @@
+ Flags<[CC1Option]>;
+ def fno_use_line_directives : Flag<["-"], "fno-use-line-directives">, Group<f_Group>;
++def fformat_extensions: Flag<["-"], "fformat-extensions">, Group<f_Group>, Flag s<[CC1Option]>,
++ HelpText<"Enable FreeBSD kernel specific format string extensions">;
def ffreestanding : Flag<["-"], "ffreestanding">, Group<f_Group>, Flags<[CC1Option]>,
HelpText<"Assert that the compilation takes place in a freestanding environment">;
-+def fformat_extensions: Flag<["-"], "fformat-extensions">, Group<f_Group>, Flags<[CC1Option]>,
-+ HelpText<"Enable FreeBSD kernel specific format string extensions">;
- def fgnu_keywords : Flag<["-"], "fgnu-keywords">, Group<f_Group>, Flags<[CC1Option]>,
- HelpText<"Allow GNU-extension keywords regardless of language standard">;
- def fgnu89_inline : Flag<["-"], "fgnu89-inline">, Group<f_Group>, Flags<[CC1Option]>,
-diff -ruN tools/clang/lib/Driver/ToolChains/Clang.cpp tools/clang/lib/Driver/ToolChains/Clang.cpp
---- tools/clang/lib/Driver/ToolChains/Clang.cpp.orig 2017-03-27 21:06:42.969177000 +0000
-+++ tools/clang/lib/Driver/ToolChains/Clang.cpp 2017-03-27 21:07:03.523370000 +0000
-@@ -3188,6 +3188,7 @@
-
- // Forward -f (flag) options which we can pass directly.
- Args.AddLastArg(CmdArgs, options::OPT_femit_all_decls);
-+ Args.AddLastArg(CmdArgs, options::OPT_fformat_extensions);
- Args.AddLastArg(CmdArgs, options::OPT_fheinous_gnu_extensions);
- Args.AddLastArg(CmdArgs, options::OPT_fno_operator_names);
- // Emulated TLS is enabled by default on Android, and can be enabled manually
-diff -ruN tools/clang/lib/Frontend/CompilerInvocation.cpp tools/clang/lib/Frontend/CompilerInvocation.cpp
---- tools/clang/lib/Frontend/CompilerInvocation.cpp 2015-08-18 08:10:39 UTC
-+++ tools/clang/lib/Frontend/CompilerInvocation.cpp
-@@ -1559,6 +1559,7 @@
- Opts.ShortWChar = Args.hasFlag(OPT_fshort_wchar, OPT_fno_short_wchar, false);
- Opts.ShortEnums = Args.hasArg(OPT_fshort_enums);
- Opts.Freestanding = Args.hasArg(OPT_ffreestanding);
-+ Opts.FormatExtensions = Args.hasArg(OPT_fformat_extensions);
- Opts.NoBuiltin = Args.hasArg(OPT_fno_builtin) || Opts.Freestanding;
- Opts.NoMathBuiltin = Args.hasArg(OPT_fno_math_builtin);
- Opts.AssumeSaneOperatorNew = !Args.hasArg(OPT_fno_assume_sane_operator_new);
+ def fgnuc_version_EQ : Joined<["-"], "fgnuc-version=">, Group<f_Group>,
diff --git a/devel/llvm-devel/files/openmp/patch-bug32279 b/devel/llvm-devel/files/openmp/patch-bug32279
deleted file mode 100644
index eb72391e7709..000000000000
--- a/devel/llvm-devel/files/openmp/patch-bug32279
+++ /dev/null
@@ -1,11 +0,0 @@
---- projects/openmp/runtime/cmake/LibompHandleFlags.cmake.orig
-+++ projects/openmp/runtime/cmake/LibompHandleFlags.cmake
-@@ -158,7 +158,7 @@
- if(${IA32})
- libomp_append(libflags_local -lirc_pic LIBOMP_HAVE_IRC_PIC_LIBRARY)
- endif()
-- if(${CMAKE_SYSTEM_NAME} MATCHES "DragonFly")
-+ if((${CMAKE_SYSTEM_NAME} MATCHES "DragonFly") OR (${CMAKE_SYSTEM_NAME} MATCHES "FreeBSD"))
- libomp_append(libflags_local "-Wl,--no-as-needed" LIBOMP_HAVE_AS_NEEDED_FLAG)
- libomp_append(libflags_local "-lm")
- libomp_append(libflags_local "-Wl,--as-needed" LIBOMP_HAVE_AS_NEEDED_FLAG)
diff --git a/devel/llvm-devel/files/ppc64-elfv2/patch-lib_Target_PowerPC_PPCTargetMachine.cpp b/devel/llvm-devel/files/ppc64-elfv2/patch-lib_Target_PowerPC_PPCTargetMachine.cpp
new file mode 100644
index 000000000000..b0a1482581c9
--- /dev/null
+++ b/devel/llvm-devel/files/ppc64-elfv2/patch-lib_Target_PowerPC_PPCTargetMachine.cpp
@@ -0,0 +1,23 @@
+--- lib/Target/PowerPC/PPCTargetMachine.cpp.orig 2019-07-04 07:43:51 UTC
++++ lib/Target/PowerPC/PPCTargetMachine.cpp
+@@ -209,6 +209,20 @@ static PPCTargetMachine::PPCABI computeTargetABI(const
+ if (TT.isMacOSX())
+ return PPCTargetMachine::PPC_ABI_UNKNOWN;
+
++ if (TT.isOSFreeBSD()) {
++ switch (TT.getArch()) {
++ case Triple::ppc64le:
++ case Triple::ppc64:
++ if (TT.getOSMajorVersion() >= 13)
++ return PPCTargetMachine::PPC_ABI_ELFv2;
++ else
++ return PPCTargetMachine::PPC_ABI_ELFv1;
++ case Triple::ppc:
++ default:
++ return PPCTargetMachine::PPC_ABI_UNKNOWN;
++ }
++ }
++
+ switch (TT.getArch()) {
+ case Triple::ppc64le:
+ return PPCTargetMachine::PPC_ABI_ELFv2;
diff --git a/devel/llvm-devel/files/ppc64-elfv2/patch-tools_clang_lib_Basic_Targets_PPC.h b/devel/llvm-devel/files/ppc64-elfv2/patch-tools_clang_lib_Basic_Targets_PPC.h
new file mode 100644
index 000000000000..5b6460a0afba
--- /dev/null
+++ b/devel/llvm-devel/files/ppc64-elfv2/patch-tools_clang_lib_Basic_Targets_PPC.h
@@ -0,0 +1,34 @@
+--- tools/clang/lib/Basic/Targets/PPC.h.orig 2019-07-09 13:32:26 UTC
++++ tools/clang/lib/Basic/Targets/PPC.h
+@@ -374,12 +374,29 @@ class LLVM_LIBRARY_VISIBILITY PPC64TargetInfo : public
+ IntMaxType = SignedLong;
+ Int64Type = SignedLong;
+
++ if (Triple.getEnvironment() != llvm::Triple::UnknownEnvironment) {
++ switch (Triple.getEnvironment()){
++ case llvm::Triple::ELFv1:
++ ABI = "elfv1";
++ break;
++ default:
++ ABI = "elfv2";
++ break;
++ }
++ } else {
++ if ((Triple.getOS() == llvm::Triple::FreeBSD) &&
++ (Triple.getOSMajorVersion() < 13)) {
++ ABI = "elfv1";
++ } else {
++ ABI = "elfv2";
++ }
++ }
++
++
+ if ((Triple.getArch() == llvm::Triple::ppc64le)) {
+ resetDataLayout("e-m:e-i64:64-n32:64");
+- ABI = "elfv2";
+ } else {
+ resetDataLayout("E-m:e-i64:64-n32:64");
+- ABI = Triple.getEnvironment() == llvm::Triple::ELFv2 ? "elfv2" : "elfv1";
+ }
+
+ if (Triple.getOS() == llvm::Triple::AIX)