|
|
|
|
Changelog for ldc-phobos-devel-1.32.2-2.5.x86_64.rpm :
* Wed Dec 06 2023 Andreas Schwab - riscv64-default-target.patch: Default to rv64gc for hosted riscv64 target- Enable build on riscv64 * Fri Jul 07 2023 Guillaume GARDET - Update to 1.32.2: * Big news - New command-line option --fwarn-stack-size= with LLVM 13+. (#4378) - New command-line option --fsplit-stack for incremental stack allocations, see https://llvm.org/docs/SegmentedStacks.html. (#4379) - New UDA ldc.attributes.noSplitStack disables it on a per-function basis. (#4382) - New command-line option --indent for the timetrace2txt tool. (#4391) * Bug fixes - Fix potentially huge compile slowdowns with -g and LLVM 15+. (#4354, #4393) - Treat all LLVM warnings as regular warnings (e.g., errors with -w). Requires LLVM 13+. (#4384)- Skipped 1.32.1: * Big news - The prebuilt Linux packages are now generated on a Ubuntu 20.04 box, so the min required glibc version has been raised from 2.26 to 2.31. (#4367) * Bug fixes - Fix empty ldc.gccbuiltins_ * modules with LLVM 15+. (#4347, #4350) - Fix v1.31 regression wrt. potentially wrong constant pointer offsets. (#4362, #4365) - Windows: Fix v1.32 regression wrt. leaking Throwable.info backtraces. (#4369) - Fix C assert calls for newlib targets. (#4351) * Fri Jul 07 2023 Guillaume GARDET - Do not use %{_includedir}/d to be able to install/use multiple D compilers in parallel - boo#1212913 * Fri Apr 21 2023 Dominique Leuenberger - Add specific conflict from runtime-devel to the old/previous libdruntime-ldc99. which contained an unversioned file. * Thu Apr 20 2023 Dominique Leuenberger - Only move bash-completion from /etc to /usr/share if this was not properly installed. There was an error that bash-completion-devel did not actually contain the .cmake file which in turn resulted in this package mis-installing despite the correct build deps. * Tue Apr 11 2023 Guillaume GARDET - Move %{_libdir}/ldc_rt.dso.o to runtime-devel package * Thu Apr 06 2023 Guillaume GARDET - Use llvm15 when available (Tumbleweed + Leap 15.5)- Update to 1.32.0: * Big news - Frontend, druntime and Phobos are at version 2.102.2. (#4323, #4341) (new) - LLVM for prebuilt packages bumped to v15.0.7. (#4311) - Linker-level dead code elimination is enabled by default for Apple, wasm and all ELF targets too now. (#4320) - Vector comparisons (==, !=, <, <=, >, >=) now yield a vector mask. Identity comparisons (is, !is) still yield a scalar bool. (3a59ee8) - New timetrace2txt tool for easier inspection of --ftime-trace output. (#4335) (new) - --ftime-trace now also traces CTFE execution: the start expression of CTFE and function calls during CTFE. (#4339) (new) * Platform support - Supports LLVM 9.0 - 15.0. - Now supports -mabi for RISC-V targets. (#4322) * Bug fixes - GC closures including variables with alignment > 16 bytes are now properly aligned. (ef8ba48) - Fix regression with LLVM 13+: some errors in inline assembly don\'t stop compilation. (#4293, #4331)- Changelog from skipped 1.31.0: * Big news - Frontend, druntime and Phobos are at version 2.101.2. (#4141, #4279) - Bit fields support. (#4015) - macOS on Apple M1: linking with -g is working again without unaligned pointer warnings/errors. This fixes file:line debug information in exception backtraces (requiring atos, a macOS development tool installed with Xcode), without the need to set MACOSX_DEPLOYMENT_TARGET=11 and using a modified LLVM. (#4291) - Preliminary support for LLVM 15, incl. adding support for the \'new\' pass manager (-passmanager) and opaque IR pointers (-opaque-pointers). (way too many PRs to list!) - New command-line option -fno-delete-null-pointer-checks, mimicking the same option of GCC and Clang. (#4297) - New UDA ldc.attributes.callingConvention(\"...\"), which overrides the default calling convention. For expert use only! (#4299) - New command-line option -fno-discard-value-names to keep value names in LLVM IR. (#4012) - dcompute: Support for OpenCL image I/O. (#3835) * Platform support - Initial ABI support for 64-bit RISC-V. (#4007) * Bug fixes - dcompute: Fix v1.29 regression when trying to use intrinsics. (#4266, #4267) - Fix 64-bit symbol offsets. (#4264, #4283) - Add missing 32-bit LTO versions of druntime & Phobos to Linux multilib package. (#4234, #4235) - Fix compiler crash. (#4130, #4135) * Internals - The former druntime and dmd-testsuite git submodules are now part of the LDC repo directly, leaving Phobos as single remaining submodule. We are now using a subset of the DMD repo (which includes druntime since v2.101), rewritten via git filter-repo and exposed as dmd-rewrite- * branches/tags in the LDC repo, to merge newer frontend+druntime+tests from upstream DMD. The tests/d2/dmd-testsuite dir was moved to tests/dmd. (#4274, #4276)- Changelog from skipped 1.30.0: * Big news - Frontend, druntime and Phobos are at version 2.100.1. (#3970, #4008, #4009) (new) - LLVM for prebuilt packages bumped to v14.0.3. (#3952, #3979) - All LLVM targets are enabled now (=> more targets for cross-compilation). - For the Mac package, the minimum supported macOS version has been raised to v10.12. - The minimum D version for bootstrapping has been raised to v2.079 (for GDC: v9.4), in line with DMD. (#3956) - The minimum LLVM version has been raised to v9.0. (#3960) - New LeakSanitizer support via -fsanitize=leak (not (yet?) supported on Windows). (#4005) (new) - New prebuilt universal macOS package, runnable on both x86_64 and arm64, and enabling x86_64/arm64 macOS/iOS cross-compilation targets out of the box (-mtriple={x86_64,arm64}-apple-{macos,ios}). The x86_64 package doesn\'t bundle any arm64 libs anymore; the arm64 package newly bundles iOS libs (arm64). (#3958) - Avoid an external x86_64-only dub, use the bundled universal dub executable instead. * Platform support - Supports LLVM 9.0 - 14.0. * Bug fixes - Enable output of variable names in ASan and MSan error reporting. (#4004) (new) - Report unexpected type repaints as fatal ICEs instead of crashing. (#3990, #3991) (new) * Internals - Main CI was moved from Azure Pipelines to GitHub Actions. Any fork on GitHub can trivially reuse the fully automated prebuilt packages generation & upload to a GitHub release. (#3978) * Fri Nov 25 2022 Max Lin - Force to use llvm14 in Leap 15.5 since the default llvm version is now llvm15 * Mon Nov 21 2022 Dominique Leuenberger - Do not have the main package recommend the bash-completion sub-package, but rather have the subpackage supplement the combination of ldc and bash-completion. * Fri Oct 07 2022 Guillaume GARDET - Build against llvm14 for Tumbleweed since llvm15 is not supported yet * Tue May 10 2022 Fabian Vogt - Use gcc-d (gdc) for bootstrapping as recommended by upstream. Only gdc is needed for bootstrapping instead of various older ldc versions, which also allows to use newer versions of LLVM (boo#1199054). On top of that, this allows ldc to use the shared runtime built with itself.- Drop use of binutils-gold, 1.29.0 does not use it by default anymore- Mention %so_ver in %files * Tue Apr 12 2022 Chris Josten - Update to 1.29.0: * Frontend, druntime and Phobos are at version 2.099.1 * Support for LLVM 13 and LLVM 14 * New AATThidden UDA (as counterpart of export). * Support \'raw mangles\' via leading \\1 in pragma(mangle) strings, e.g., to access magic linker symbols on Mac. * New AATTnoSanitize UDA to selectively disable sanitizer instrumentation of functions. * WebAssembly: Larger default stack size (1 MB) and protection against stack overflow overwriting global memory. * LDC doesn\'t default to the ld.gold linker anymore. The combination of LLVM 13+ and older gold linkers can apparently cause problems. We recommend using LLD, e.g., via -linker=lld or by setting your default /usr/bin/ld symlink; it\'s significantly faster too. * -linkonce-templates is less aggressive by default now and IMHO production-ready. * When linking manually (not via LDC) against shared druntime, it is now required to link the bundled lib/ldc_rt.dso.o[bj] object file into each binary. It replaces the previously Windows-specific dso_windows.obj. * Basic compiler support for Newlib targets, i.e., triples like arm-none-newlibeabi. * dcompute: Add support for OpenCL image I/O. * Revamped and improved -ftime-trace implementation for compiler profiling/tracing, now excluding LLVM-internal traces, adding frontend memory tracing, source file location infos etc * Implement core.atomic.pause() for some architectures. * Bug fixes: * Linux: Make LTO work with LLD. * Capture NRVO variable by ref for stack closures. * -ftime-trace: JSON-escape filenames. * RISC-V: Use 128-bit quadruple real. * Linux x86/x64: Fix TLS range with static druntime and bfd/lld linkers. * Support rdtscp in DMD-style inline assembly. * Fix dynamic casts across binary boundaries (DLLs etc.). * Don\'t silently ignore invalid external tool specifications. * LLVM v11.1: Add missing PGO ldc-profdata tool. * ICE for 64-bit targets with 32-bit pointer size. * Breaking ABI changes: * extern(D): formal parameters of non-variadic functions aren\'t reversed anymore, in line with the spec. * Mon May 17 2021 Ferdinand Thiessen - Update to 1.26.0: * Frontend, druntime and Phobos are at version 2.096.1+ incl. new ldmd2 command-line option -gdwarf= * Supports LLVM 6.0 - 12.0 * LDC invocations can now be nicely profiled via --ftime-trace. * Struct TypeInfos are emitted into referencing object files only, and special TypeInfo member functions into the owning object file only. * Bug fixes: * TypeInfo for interface gives invalid string for name. * dcompute: Don’t reject CUDA versions 7.x - 8.0.0. * Don’t enforce the frame pointer for functions with GCC-style inline asm. * Fix some cases of insufficient alignment for arguments and parameters. * Fix a few issues with LLVM 12. * Add source location information for TypeInfo diagnostics with -betterC. * Keep init symbols of built-in TypeInfo classes mutable just like any other TypeInfo, so that e.g. synchronized() can be used on the implicit monitor. * Predefine version FreeStanding when targeting bare-metal. * druntime: Define rt.aaA.AA as naked pointer, no struct wrapper * Misc. fixes and improvements for the CMake scripts, incl. new defaults for LDC_INSTALL_{LTOPLUGIN,LLVM_RUNTIME_LIBS} * -cleanup-obj: Put object files into unique temporary directory by default. * druntime: Add missing core.atomic.atomicFetch{Add,Sub}. * Fix regression wrt. non-deleted temporary -run executable. * Breaking ABI changes: * extern(D): Pass non-PODs by ref to temporary. * -linkonce-templates comes with a new experimental template emission scheme and is now suited for projects consisting of multiple object files too.- 1.13+ is now required for 1.26+ on 32bit
|
|
|