[llvm-branch-commits] [clang] [llvm] [lld] [docs] Add release notes for Windows specific changes in 18.x (PR #80011)

Martin Storsjö via llvm-branch-commits llvm-branch-commits at lists.llvm.org
Tue Jan 30 09:14:09 PST 2024


https://github.com/mstorsjo updated https://github.com/llvm/llvm-project/pull/80011

>From a09a391d4985d4adc1a5f500ba69b2f8f55aa47f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Martin=20Storsj=C3=B6?= <martin at martin.st>
Date: Tue, 30 Jan 2024 14:18:22 +0200
Subject: [PATCH 1/2] [docs] Add release notes for Windows specific changes in
 18.x

---
 clang/docs/ReleaseNotes.rst |  2 ++
 lld/docs/ReleaseNotes.rst   | 16 ++++++++++++++++
 llvm/docs/ReleaseNotes.rst  | 14 ++++++++++++++
 3 files changed, 32 insertions(+)

diff --git a/clang/docs/ReleaseNotes.rst b/clang/docs/ReleaseNotes.rst
index 060bc7669b72a..c0833a4ee7a31 100644
--- a/clang/docs/ReleaseNotes.rst
+++ b/clang/docs/ReleaseNotes.rst
@@ -1195,6 +1195,8 @@ Windows Support
   linking may succeed but the resulting executables may expose issues at
   runtime.
 
+- Clang now passes relevant LTO options to the linker (LLD) in MinGW mode.
+
 LoongArch Support
 ^^^^^^^^^^^^^^^^^
 - Added builtins support for all LSX (128-bits SIMD) and LASX (256-bits SIMD)
diff --git a/lld/docs/ReleaseNotes.rst b/lld/docs/ReleaseNotes.rst
index 01669543cd50c..c896d2bd537a2 100644
--- a/lld/docs/ReleaseNotes.rst
+++ b/lld/docs/ReleaseNotes.rst
@@ -41,9 +41,25 @@ COFF Improvements
 * Added support for ``--time-trace`` and associated ``--time-trace-granularity``.
   This generates a .json profile trace of the linker execution.
 
+* Prefer library paths specified with ``-libpath:`` over the implicitly
+  detected toolchain paths.
+
 MinGW Improvements
 ------------------
 
+* Added support for many LTO and ThinLTO options.
+
+* LLD no longer tries to autodetect and pick up MSVC/WinSDK installations
+  when run in MinGW mode.
+
+* The ``--icf=safe`` option now works as expected; it was previously a no-op.
+
+* More correctly handle LTO of files that define ``__imp_`` prefixed dllimport
+  redirections.
+
+* The strip flags ``-S`` and ``-s`` now can be used to strip out DWARF debug
+  info and symbol tables while emitting a PDB debug info file.
+
 MachO Improvements
 ------------------
 
diff --git a/llvm/docs/ReleaseNotes.rst b/llvm/docs/ReleaseNotes.rst
index 7b6a3f10d6377..c46c4a3f767f7 100644
--- a/llvm/docs/ReleaseNotes.rst
+++ b/llvm/docs/ReleaseNotes.rst
@@ -319,6 +319,18 @@ Changes to the LLVM tools
 * llvm-objcopy now supports ``--gap-fill`` and ``--pad-to`` options, for
   ELF input and binary output files only.
 
+* llvm-rc and llvm-windres now accept file path references in ``.rc`` files
+  concatenated from multiple string literals.
+
+* The llvm-windres option ``--preprocessor`` now resolve its argument
+  in the PATH environment variable as expected, and options passed with
+  ``--preprocessor-arg`` are placed before the input file as they should.
+
+* The llvm-windres option ``--preprocessor`` has been updated with the
+  breaking behaviour change from GNU windres from binutils 2.36, where
+  the whole argument is considered as one path, not considered as a
+  sequence of tool name and parameters.
+
 Changes to LLDB
 ---------------------------------
 
@@ -359,6 +371,8 @@ Changes to LLDB
   fields are present, however this is not always possible or entirely
   accurate. If in doubt, refer to the numerical value.
 
+* On Windows, LLDB can now read the thread names.
+
 Changes to Sanitizers
 ---------------------
 * HWASan now defaults to detecting use-after-scope bugs.

>From 366716fe1814fbe37407913f8d5b0e0438773afb Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Martin=20Storsj=C3=B6?= <martin at martin.st>
Date: Tue, 30 Jan 2024 19:13:33 +0200
Subject: [PATCH 2/2] Apply review suggestions

---
 lld/docs/ReleaseNotes.rst  | 12 ++++++++----
 llvm/docs/ReleaseNotes.rst |  5 +++--
 2 files changed, 11 insertions(+), 6 deletions(-)

diff --git a/lld/docs/ReleaseNotes.rst b/lld/docs/ReleaseNotes.rst
index c896d2bd537a2..3ff811d6d749f 100644
--- a/lld/docs/ReleaseNotes.rst
+++ b/lld/docs/ReleaseNotes.rst
@@ -41,16 +41,20 @@ COFF Improvements
 * Added support for ``--time-trace`` and associated ``--time-trace-granularity``.
   This generates a .json profile trace of the linker execution.
 
-* Prefer library paths specified with ``-libpath:`` over the implicitly
+* LLD now prefers library paths specified with ``-libpath:`` over the implicitly
   detected toolchain paths.
 
 MinGW Improvements
 ------------------
 
-* Added support for many LTO and ThinLTO options.
+* Added support for many LTO and ThinLTO options (most LTO options supported
+  by the ELF driver, that are implemented by the COFF backend as well,
+  should be supported now).
 
-* LLD no longer tries to autodetect and pick up MSVC/WinSDK installations
-  when run in MinGW mode.
+* LLD no longer tries to autodetect and use library paths from MSVC/WinSDK
+  installations when run in MinGW mode; that mode of operation shouldn't
+  ever be needed in MinGW mode, and could be a source of unexpected
+  behaviours.
 
 * The ``--icf=safe`` option now works as expected; it was previously a no-op.
 
diff --git a/llvm/docs/ReleaseNotes.rst b/llvm/docs/ReleaseNotes.rst
index c46c4a3f767f7..a58d36652d458 100644
--- a/llvm/docs/ReleaseNotes.rst
+++ b/llvm/docs/ReleaseNotes.rst
@@ -322,9 +322,10 @@ Changes to the LLVM tools
 * llvm-rc and llvm-windres now accept file path references in ``.rc`` files
   concatenated from multiple string literals.
 
-* The llvm-windres option ``--preprocessor`` now resolve its argument
+* The llvm-windres option ``--preprocessor`` now resolves its argument
   in the PATH environment variable as expected, and options passed with
-  ``--preprocessor-arg`` are placed before the input file as they should.
+  ``--preprocessor-arg`` are placed before the input file as they should
+  be.
 
 * The llvm-windres option ``--preprocessor`` has been updated with the
   breaking behaviour change from GNU windres from binutils 2.36, where



More information about the llvm-branch-commits mailing list