Author: Martin Storsjö Date: 2023-01-23T22:12:32+02:00 New Revision: c3737a6522306ba4504234afe35be8b0a4b7b48d
URL: https://github.com/llvm/llvm-project/commit/c3737a6522306ba4504234afe35be8b0a4b7b48d DIFF: https://github.com/llvm/llvm-project/commit/c3737a6522306ba4504234afe35be8b0a4b7b48d.diff LOG: [docs] Add release notes for news in 16.x done by me, or otherwise relating to MinGW targets Differential Revision: https://reviews.llvm.org/D142346 Added: Modified: clang/docs/ReleaseNotes.rst lld/docs/ReleaseNotes.rst llvm/docs/ReleaseNotes.rst openmp/docs/ReleaseNotes.rst Removed: ################################################################################ diff --git a/clang/docs/ReleaseNotes.rst b/clang/docs/ReleaseNotes.rst index 080a400726057..f7a68a64df325 100644 --- a/clang/docs/ReleaseNotes.rst +++ b/clang/docs/ReleaseNotes.rst @@ -578,6 +578,11 @@ Modified Compiler Flags - Clang now permits specifying ``--config=`` multiple times, to load multiple configuration files. +- The option ``-rtlib=platform`` can now be used for all targets to override + a diff erent option value (either one set earlier on the command line, or a + built-in hardcoded default). (Previously the MSVC and Darwin targets didn't + allow this parameter combination.) + Removed Compiler Flags ------------------------- - Clang now no longer supports ``-cc1 -fconcepts-ts``. This flag has been deprecated @@ -632,6 +637,16 @@ Windows Support - Switched from SHA1 to BLAKE3 for PDB type hashing / ``-gcodeview-ghash`` +- Fixed code generation with emulated TLS, when the emulated TLS is enabled + by default (with downstream patches; no upstream configurations default + to this configuration, but some mingw downstreams change the default + in this way). + +- Improved detection of MinGW cross sysroots for finding sysroots provided + by Linux distributions such as Fedora. Also improved such setups by + avoiding to include ``/usr/include`` among the include paths when cross + compiling with a cross sysroot based in ``/usr``. + AIX Support ----------- * When using ``-shared``, the clang driver now invokes llvm-nm to create an diff --git a/lld/docs/ReleaseNotes.rst b/lld/docs/ReleaseNotes.rst index c350aa9e714c5..00aaeff96d78e 100644 --- a/lld/docs/ReleaseNotes.rst +++ b/lld/docs/ReleaseNotes.rst @@ -57,6 +57,8 @@ COFF Improvements * Improvements to the PCH.OBJ files handling. Now LLD behaves the same as MSVC link.exe when merging PCH.OBJ files that don't have the same signature. (`D136762 <https://reviews.llvm.org/D136762>`_) +* Changed the OrdinalBase for DLLs from 0 to 1, matching the output from + both MS link.exe and GNU ld. (`D134140 <https://reviews.llvm.org/D134140>`_) MinGW Improvements ------------------ @@ -71,6 +73,14 @@ MinGW Improvements the load config directory and be filled with the required symbols. (`D132808 <https://reviews.llvm.org/D132808>`_) +* Pick up libraries named ``<name>.lib`` when linked with ``-l<name>``, even + if ``-static`` has been specified. This fixes conformance to what + GNU ld does. (`D135651 <https://reviews.llvm.org/D135651>`_) + +* Unwinding in Rust code on i386 in MinGW builds has been fixed, by avoiding + to leave out the ``rust_eh_personality`` symbol. + (`D136879 <https://reviews.llvm.org/D136879>`_) + MachO Improvements ------------------ diff --git a/llvm/docs/ReleaseNotes.rst b/llvm/docs/ReleaseNotes.rst index 53c947dc7cef1..671e7cce9c216 100644 --- a/llvm/docs/ReleaseNotes.rst +++ b/llvm/docs/ReleaseNotes.rst @@ -222,6 +222,25 @@ Changes to the Windows Target an affinity mask issue. (`D138747 <https://reviews.llvm.org/D138747>`_) +* When building LLVM and related tools for Windows with Clang in MinGW mode, + hidden symbol visiblity is now used to reduce the number of exports in + builds with dylibs (``LLVM_BUILD_LLVM_DYLIB`` or ``LLVM_LINK_LLVM_DYLIB``), + making such builds more manageable without running into the limit of + number of exported symbols. + +* AArch64 SEH unwind info generation bugs have been fixed; there were minor + cases of mismatches between the generated unwind info and actual + prologues/epilogues earlier in some cases. + +* AArch64 SEH unwind info is now generated correctly for the AArch64 + security features BTI (Branch Target Identification) and PAC (Pointer + Authentication Code). In particular, using PAC with older versions of LLVM + would generate code that would fail to unwind at runtime, if the host + actually would use the pointer authentication feature. + +* Fixed stack alignment on Windows on AArch64, for stack frames with a + large enough allocation that requires stack probing. + Changes to the X86 Backend -------------------------- @@ -308,11 +327,20 @@ Changes to the LLVM tools * ``llvm-objdump`` now uses ``--print-imm-hex`` by default, which brings its default behavior closer in line with ``objdump``. +* ``llvm-objcopy`` no longer writes corrupt addresses to empty sections if + the input file had a nonzero address to an empty section. + Changes to LLDB --------------------------------- * Initial support for debugging Linux LoongArch 64-bit binaries. +* Improvements in COFF symbol handling; previously a DLL (without any other + debug info) would only use the DLL's exported symbols, while it now also + uses the full list of internal symbols, if available. + +* Avoiding duplicate DLLs in the runtime list of loaded modules on Windows. + Changes to Sanitizers --------------------- @@ -329,6 +357,12 @@ Other Changes would now be ``UNSUPPORTED: target=arm{{.*}}`` and ``XFAIL: windows`` would now be ``XFAIL: target={{.*}}-windows{{.*}}``. +* When cross compiling LLVM (or building with ``LLVM_OPTIMIZED_TABLEGEN``), + it is now possible to point the build to prebuilt versions of all the + host tools with one CMake variable, ``LLVM_NATIVE_TOOL_DIR``, instead of + having to point out each individual tool with variables such as + ``LLVM_TABLEGEN``, ``CLANG_TABLEGEN``, ``LLDB_TABLEGEN`` etc. + External Open Source Projects Using LLVM 15 =========================================== diff --git a/openmp/docs/ReleaseNotes.rst b/openmp/docs/ReleaseNotes.rst index 785332f11858f..7a626a0c46965 100644 --- a/openmp/docs/ReleaseNotes.rst +++ b/openmp/docs/ReleaseNotes.rst @@ -19,3 +19,8 @@ from the `LLVM releases web site <https://llvm.org/releases/>`_. Non-comprehensive list of changes in this release ================================================= + +* Support for building the OpenMP runtime for Windows on AArch64 and ARM + with MinGW based toolchains. + +* Made the OpenMP runtime tests run successfully on Windows. _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits