diff options
Diffstat (limited to 'devel/llvm-devel/files')
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) |