Skip to content

Commit c3737a6

Browse files
committed
[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
1 parent 14c0317 commit c3737a6

File tree

4 files changed

+64
-0
lines changed

4 files changed

+64
-0
lines changed

clang/docs/ReleaseNotes.rst

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -578,6 +578,11 @@ Modified Compiler Flags
578578
- Clang now permits specifying ``--config=`` multiple times, to load multiple
579579
configuration files.
580580

581+
- The option ``-rtlib=platform`` can now be used for all targets to override
582+
a different option value (either one set earlier on the command line, or a
583+
built-in hardcoded default). (Previously the MSVC and Darwin targets didn't
584+
allow this parameter combination.)
585+
581586
Removed Compiler Flags
582587
-------------------------
583588
- Clang now no longer supports ``-cc1 -fconcepts-ts``. This flag has been deprecated
@@ -632,6 +637,16 @@ Windows Support
632637

633638
- Switched from SHA1 to BLAKE3 for PDB type hashing / ``-gcodeview-ghash``
634639

640+
- Fixed code generation with emulated TLS, when the emulated TLS is enabled
641+
by default (with downstream patches; no upstream configurations default
642+
to this configuration, but some mingw downstreams change the default
643+
in this way).
644+
645+
- Improved detection of MinGW cross sysroots for finding sysroots provided
646+
by Linux distributions such as Fedora. Also improved such setups by
647+
avoiding to include ``/usr/include`` among the include paths when cross
648+
compiling with a cross sysroot based in ``/usr``.
649+
635650
AIX Support
636651
-----------
637652
* When using ``-shared``, the clang driver now invokes llvm-nm to create an

lld/docs/ReleaseNotes.rst

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,8 @@ COFF Improvements
5757
* Improvements to the PCH.OBJ files handling. Now LLD behaves the same as MSVC
5858
link.exe when merging PCH.OBJ files that don't have the same signature.
5959
(`D136762 <https://reviews.llvm.org/D136762>`_)
60+
* Changed the OrdinalBase for DLLs from 0 to 1, matching the output from
61+
both MS link.exe and GNU ld. (`D134140 <https://reviews.llvm.org/D134140>`_)
6062

6163
MinGW Improvements
6264
------------------
@@ -71,6 +73,14 @@ MinGW Improvements
7173
the load config directory and be filled with the required symbols.
7274
(`D132808 <https://reviews.llvm.org/D132808>`_)
7375

76+
* Pick up libraries named ``<name>.lib`` when linked with ``-l<name>``, even
77+
if ``-static`` has been specified. This fixes conformance to what
78+
GNU ld does. (`D135651 <https://reviews.llvm.org/D135651>`_)
79+
80+
* Unwinding in Rust code on i386 in MinGW builds has been fixed, by avoiding
81+
to leave out the ``rust_eh_personality`` symbol.
82+
(`D136879 <https://reviews.llvm.org/D136879>`_)
83+
7484
MachO Improvements
7585
------------------
7686

llvm/docs/ReleaseNotes.rst

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -222,6 +222,25 @@ Changes to the Windows Target
222222
an affinity mask issue.
223223
(`D138747 <https://reviews.llvm.org/D138747>`_)
224224

225+
* When building LLVM and related tools for Windows with Clang in MinGW mode,
226+
hidden symbol visiblity is now used to reduce the number of exports in
227+
builds with dylibs (``LLVM_BUILD_LLVM_DYLIB`` or ``LLVM_LINK_LLVM_DYLIB``),
228+
making such builds more manageable without running into the limit of
229+
number of exported symbols.
230+
231+
* AArch64 SEH unwind info generation bugs have been fixed; there were minor
232+
cases of mismatches between the generated unwind info and actual
233+
prologues/epilogues earlier in some cases.
234+
235+
* AArch64 SEH unwind info is now generated correctly for the AArch64
236+
security features BTI (Branch Target Identification) and PAC (Pointer
237+
Authentication Code). In particular, using PAC with older versions of LLVM
238+
would generate code that would fail to unwind at runtime, if the host
239+
actually would use the pointer authentication feature.
240+
241+
* Fixed stack alignment on Windows on AArch64, for stack frames with a
242+
large enough allocation that requires stack probing.
243+
225244
Changes to the X86 Backend
226245
--------------------------
227246

@@ -308,11 +327,20 @@ Changes to the LLVM tools
308327
* ``llvm-objdump`` now uses ``--print-imm-hex`` by default, which brings its
309328
default behavior closer in line with ``objdump``.
310329

330+
* ``llvm-objcopy`` no longer writes corrupt addresses to empty sections if
331+
the input file had a nonzero address to an empty section.
332+
311333
Changes to LLDB
312334
---------------------------------
313335

314336
* Initial support for debugging Linux LoongArch 64-bit binaries.
315337

338+
* Improvements in COFF symbol handling; previously a DLL (without any other
339+
debug info) would only use the DLL's exported symbols, while it now also
340+
uses the full list of internal symbols, if available.
341+
342+
* Avoiding duplicate DLLs in the runtime list of loaded modules on Windows.
343+
316344
Changes to Sanitizers
317345
---------------------
318346

@@ -329,6 +357,12 @@ Other Changes
329357
would now be ``UNSUPPORTED: target=arm{{.*}}`` and ``XFAIL: windows``
330358
would now be ``XFAIL: target={{.*}}-windows{{.*}}``.
331359

360+
* When cross compiling LLVM (or building with ``LLVM_OPTIMIZED_TABLEGEN``),
361+
it is now possible to point the build to prebuilt versions of all the
362+
host tools with one CMake variable, ``LLVM_NATIVE_TOOL_DIR``, instead of
363+
having to point out each individual tool with variables such as
364+
``LLVM_TABLEGEN``, ``CLANG_TABLEGEN``, ``LLDB_TABLEGEN`` etc.
365+
332366
External Open Source Projects Using LLVM 15
333367
===========================================
334368

openmp/docs/ReleaseNotes.rst

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,3 +19,8 @@ from the `LLVM releases web site <https://llvm.org/releases/>`_.
1919

2020
Non-comprehensive list of changes in this release
2121
=================================================
22+
23+
* Support for building the OpenMP runtime for Windows on AArch64 and ARM
24+
with MinGW based toolchains.
25+
26+
* Made the OpenMP runtime tests run successfully on Windows.

0 commit comments

Comments
 (0)