Skip to content

Bump version to 21.0.0git #124870

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 4 commits into from
Jan 29, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
312 changes: 0 additions & 312 deletions clang-tools-extra/docs/ReleaseNotes.rst

Large diffs are not rendered by default.

1,295 changes: 0 additions & 1,295 deletions clang/docs/ReleaseNotes.rst

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion cmake/Modules/LLVMVersion.cmake
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# The LLVM Version number information

if(NOT DEFINED LLVM_VERSION_MAJOR)
set(LLVM_VERSION_MAJOR 20)
set(LLVM_VERSION_MAJOR 21)
endif()
if(NOT DEFINED LLVM_VERSION_MINOR)
set(LLVM_VERSION_MINOR 0)
Expand Down
3 changes: 2 additions & 1 deletion libcxx/docs/ReleaseNotes.rst
Original file line number Diff line number Diff line change
@@ -1,9 +1,10 @@
.. include:: ReleaseNotes/20.rst
.. include:: ReleaseNotes/21.rst

.. Make sure to reference the non-live release notes in a toctree to avoid Sphinx errors.
.. toctree::
:hidden:

ReleaseNotes/20
ReleaseNotes/19

.. The release notes are in versioned files, but we make sure to keep publishing
Expand Down
71 changes: 71 additions & 0 deletions libcxx/docs/ReleaseNotes/21.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
===========================================
Libc++ 21.0.0 (In-Progress) Release Notes
===========================================

.. contents::
:local:
:depth: 2

Written by the `Libc++ Team <https://libcxx.llvm.org>`_

.. warning::

These are in-progress notes for the upcoming libc++ 20.0.0 release.
Release notes for previous releases can be found on
`the Download Page <https://releases.llvm.org/download.html>`_.

Introduction
============

This document contains the release notes for the libc++ C++ Standard Library,
part of the LLVM Compiler Infrastructure, release 20.0.0. Here we describe the
status of libc++ in some detail, including major improvements from the previous
release and new feature work. For the general LLVM release notes, see `the LLVM
documentation <https://llvm.org/docs/ReleaseNotes.html>`_. All LLVM releases may
be downloaded from the `LLVM releases web site <https://llvm.org/releases/>`_.

For more information about libc++, please see the `Libc++ Web Site
<https://libcxx.llvm.org>`_ or the `LLVM Web Site <https://llvm.org>`_.

Note that if you are reading this file from a Git checkout or the
main Libc++ web page, this document applies to the *next* release, not
the current one. To see the release notes for a specific release, please
see the `releases page <https://llvm.org/releases/>`_.

What's New in Libc++ 21.0.0?
==============================

Implemented Papers
------------------

- TODO


Improvements and New Features
-----------------------------

- TODO


Deprecations and Removals
-------------------------

Upcoming Deprecations and Removals
----------------------------------

LLVM 22
~~~~~~~

- TODO


ABI Affecting Changes
---------------------

- TODO


Build System Changes
--------------------

- TODO
2 changes: 1 addition & 1 deletion libcxx/include/__config
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@
// _LIBCPP_VERSION represents the version of libc++, which matches the version of LLVM.
// Given a LLVM release LLVM XX.YY.ZZ (e.g. LLVM 17.0.1 == 17.00.01), _LIBCPP_VERSION is
// defined to XXYYZZ.
# define _LIBCPP_VERSION 200000
# define _LIBCPP_VERSION 210000

# define _LIBCPP_CONCAT_IMPL(_X, _Y) _X##_Y
# define _LIBCPP_CONCAT(_X, _Y) _LIBCPP_CONCAT_IMPL(_X, _Y)
Expand Down
59 changes: 0 additions & 59 deletions lld/docs/ReleaseNotes.rst
Original file line number Diff line number Diff line change
Expand Up @@ -26,73 +26,14 @@ Non-comprehensive list of changes in this release
ELF Improvements
----------------

* ``-z nosectionheader`` has been implemented to omit the section header table.
The operation is similar to ``llvm-objcopy --strip-sections``.
(`#101286 <https://github.com/llvm/llvm-project/pull/101286>`_)
* ``--randomize-section-padding=<seed>`` is introduced to insert random padding
between input sections and at the start of each segment. This can be used to
control measurement bias in A/B experiments.
(`#117653 <https://github.com/llvm/llvm-project/pull/117653>`_)
* The reproduce tarball created with ``--reproduce=`` now excludes directories
specified in the ``--dependency-file`` argument (used by Ninja). This
resolves an error where non-existent directories could cause issues when
invoking ``ld.lld @response.txt``.
* ``--symbol-ordering-file=`` and call graph profile can now be used together.
* When ``--call-graph-ordering-file=`` is specified, ``.llvm.call-graph-profile``
sections in relocatable files are no longer used.
* ``--lto-basic-block-sections=labels`` is deprecated in favor of
``--lto-basic-block-address-map``.
(`#110697 <https://github.com/llvm/llvm-project/pull/110697>`_)
* In non-relocatable links, a ``.note.GNU-stack`` section with the
``SHF_EXECINSTR`` flag is now rejected unless ``-z execstack`` is specified.
(`#124068 <https://github.com/llvm/llvm-project/pull/124068>`_)
* In relocatable links, the ``sh_entsize`` member of a ``SHF_MERGE`` section
with relocations is now respected in the output.
* Quoted names can now be used in output section phdr, memory region names,
``OVERLAY``, the LHS of ``--defsym``, and ``INSERT AFTER``.
* Section ``CLASS`` linker script syntax binds input sections to named classes,
which are referenced later one or more times. This provides access to the
automatic spilling mechanism of `--enable-non-contiguous-regions` without
globally changing the semantics of section matching. It also independently
increases the expressive power of linker scripts.
(`#95323 <https://github.com/llvm/llvm-project/pull/95323>`_)
* ``INCLUDE`` cycle detection has been fixed. A linker script can now be
included twice.
* The ``archivename:`` syntax when matching input sections is now supported.
(`#119293 <https://github.com/llvm/llvm-project/pull/119293>`_)
* To support Arm v6-M, short thunks using B.w are no longer generated.
(`#118111 <https://github.com/llvm/llvm-project/pull/118111>`_)
* For AArch64, BTI-aware long branch thunks can now be created to a destination
function without a BTI instruction.
(`#108989 <https://github.com/llvm/llvm-project/pull/108989>`_)
(`#116402 <https://github.com/llvm/llvm-project/pull/116402>`_)
* Relocations related to GOT and TLSDESC for the AArch64 Pointer Authentication ABI
are now supported.
* Supported relocation types for x86-64 target:
* ``R_X86_64_CODE_4_GOTPCRELX`` (`#109783 <https://github.com/llvm/llvm-project/pull/109783>`_) (`#116737 <https://github.com/llvm/llvm-project/pull/116737>`_)
* ``R_X86_64_CODE_4_GOTTPOFF`` (`#116634 <https://github.com/llvm/llvm-project/pull/116634>`_)
* ``R_X86_64_CODE_4_GOTPC32_TLSDESC`` (`#116909 <https://github.com/llvm/llvm-project/pull/116909>`_)
* ``R_X86_64_CODE_6_GOTTPOFF`` (`#117675 <https://github.com/llvm/llvm-project/pull/117675>`_)
* Supported relocation types for LoongArch target: ``R_LARCH_TLS_{LD,GD,DESC}_PCREL20_S2``.
(`#100105 <https://github.com/llvm/llvm-project/pull/100105>`_)

Breaking changes
----------------

* Removed support for the (deprecated) `R_RISCV_RVC_LUI` relocation. This
was a binutils-internal relocation used during relaxation, and was not
emitted by compilers/assemblers.

COFF Improvements
-----------------
* ``/includeglob`` has been implemented to match the behavior of ``--undefined-glob`` available for ELF.
* ``/lldsavetemps`` allows saving select intermediate LTO compilation results (e.g. resolution, preopt, promote, internalize, import, opt, precodegen, prelink, combinedindex).
* ``/machine:arm64ec`` support completed, enabling the linking of ARM64EC images.
* COFF weak anti-dependency alias symbols are now supported.

MinGW Improvements
------------------
* ``--undefined-glob`` is now supported by translating into the ``/includeglob`` flag.

MachO Improvements
------------------
Expand Down
Loading