Clear release notes for upcoming LLVM 20 dev cycle
diff --git a/clang-tools-extra/docs/ReleaseNotes.rst b/clang-tools-extra/docs/ReleaseNotes.rst
index 083b098..642ad39 100644
--- a/clang-tools-extra/docs/ReleaseNotes.rst
+++ b/clang-tools-extra/docs/ReleaseNotes.rst
@@ -48,10 +48,6 @@
 Improvements to clangd
 ----------------------
 
-- Introduced exmperimental support for C++20 Modules. The experimental support can
-  be enabled by `-experimental-modules-support` option. It is in an early development
-  stage and may not perform efficiently in real-world scenarios.
-
 Inlay hints
 ^^^^^^^^^^^
 
@@ -73,9 +69,6 @@
 Code actions
 ^^^^^^^^^^^^
 
-- The tweak for turning unscoped into scoped enums now removes redundant prefixes
-  from the enum values.
-
 Signature help
 ^^^^^^^^^^^^^^
 
@@ -88,23 +81,12 @@
 Miscellaneous
 ^^^^^^^^^^^^^
 
-- Added a boolean option `AnalyzeAngledIncludes` to `Includes` config section,
-  which allows to enable unused includes detection for all angled ("system") headers.
-  At this moment umbrella headers are not supported, so enabling this option
-  may result in false-positives.
-
 Improvements to clang-doc
 -------------------------
 
 Improvements to clang-query
 ---------------------------
 
-- Added the `file` command to dynamically load a list of commands and matchers
-  from an external file, allowing the cost of reading the compilation database
-  and building the AST to be imposed just once for faster prototyping.
-
-- Removed support for ``enable output srcloc``. Fixes #GH82591
-
 Improvements to clang-rename
 ----------------------------
 
@@ -113,431 +95,21 @@
 Improvements to clang-tidy
 --------------------------
 
-- Improved :program:`run-clang-tidy.py` script. Added argument `-source-filter`
-  to filter source files from the compilation database, via a RegEx. In a
-  similar fashion to what `-header-filter` does for header files.
-  Added progress indicator with a number of processed files and the runtime of
-  each invocation after completion.
-
-- Improved :program:`check_clang_tidy.py` script. Added argument `-export-fixes`
-  to aid in clang-tidy and test development.
-
-- Fixed bug where big values for unsigned check options overflowed into negative values
-  when being printed with `--dump-config`.
-
-- Fixed `--verify-config` option not properly parsing checks when using the
-  literal operator in the `.clang-tidy` config.
-
-- Added argument `--exclude-header-filter` and config option `ExcludeHeaderFilterRegex`
-  to exclude headers from analysis via a RegEx.
-
-- Added argument `--allow-no-checks` to suppress "no checks enabled" error
-  when disabling all of the checks by `--checks='-*'`.
-
 New checks
 ^^^^^^^^^^
 
-- New :doc:`boost-use-ranges
-  <clang-tidy/checks/boost/use-ranges>` check.
-
-  Detects calls to standard library iterator algorithms that could be replaced
-  with a Boost ranges version instead.
-
-- New :doc:`bugprone-crtp-constructor-accessibility
-  <clang-tidy/checks/bugprone/crtp-constructor-accessibility>` check.
-
-  Detects error-prone Curiously Recurring Template Pattern usage, when the CRTP
-  can be constructed outside itself and the derived class.
-
-- New :doc:`bugprone-pointer-arithmetic-on-polymorphic-object
-  <clang-tidy/checks/bugprone/pointer-arithmetic-on-polymorphic-object>` check.
-
-  Finds pointer arithmetic performed on classes that contain a virtual function.
-
-- New :doc:`bugprone-return-const-ref-from-parameter
-  <clang-tidy/checks/bugprone/return-const-ref-from-parameter>` check.
-
-  Detects return statements that return a constant reference parameter as constant
-  reference. This may cause use-after-free errors if the caller uses xvalues as
-  arguments.
-
-- New :doc:`bugprone-suspicious-stringview-data-usage
-  <clang-tidy/checks/bugprone/suspicious-stringview-data-usage>` check.
-
-  Identifies suspicious usages of ``std::string_view::data()`` that could lead
-  to reading out-of-bounds data due to inadequate or incorrect string null
-  termination.
-
-- New :doc:`misc-use-internal-linkage
-  <clang-tidy/checks/misc/use-internal-linkage>` check.
-
-  Detects variables and functions that can be marked as static or moved into
-  an anonymous namespace to enforce internal linkage.
-
-- New :doc:`modernize-min-max-use-initializer-list
-  <clang-tidy/checks/modernize/min-max-use-initializer-list>` check.
-
-  Replaces nested ``std::min`` and ``std::max`` calls with an initializer list
-  where applicable.
-
-- New :doc:`modernize-use-designated-initializers
-  <clang-tidy/checks/modernize/use-designated-initializers>` check.
-
-  Finds initializer lists for aggregate types that could be
-  written as designated initializers instead.
-
-- New :doc:`modernize-use-ranges
-  <clang-tidy/checks/modernize/use-ranges>` check.
-
-  Detects calls to standard library iterator algorithms that could be replaced
-  with a ranges version instead.
-
-- New :doc:`modernize-use-std-format
-  <clang-tidy/checks/modernize/use-std-format>` check.
-
-  Converts calls to ``absl::StrFormat``, or other functions via
-  configuration options, to C++20's ``std::format``, or another function
-  via a configuration option, modifying the format string appropriately and
-  removing now-unnecessary calls to ``std::string::c_str()`` and
-  ``std::string::data()``.
-
-- New :doc:`readability-enum-initial-value
-  <clang-tidy/checks/readability/enum-initial-value>` check.
-
-  Enforces consistent style for enumerators' initialization, covering three
-  styles: none, first only, or all initialized explicitly.
-
-- New :doc:`readability-math-missing-parentheses
-  <clang-tidy/checks/readability/math-missing-parentheses>` check.
-
-  Check for missing parentheses in mathematical expressions that involve
-  operators of different priorities.
-
-- New :doc:`readability-use-std-min-max
-  <clang-tidy/checks/readability/use-std-min-max>` check.
-
-  Replaces certain conditional statements with equivalent calls to
-  ``std::min`` or ``std::max``.
-
 New check aliases
 ^^^^^^^^^^^^^^^^^
 
-- New alias :doc:`cert-ctr56-cpp <clang-tidy/checks/cert/ctr56-cpp>` to
-  :doc:`bugprone-pointer-arithmetic-on-polymorphic-object
-  <clang-tidy/checks/bugprone/pointer-arithmetic-on-polymorphic-object>`
-  was added.
-
-- New alias :doc:`cert-int09-c <clang-tidy/checks/cert/int09-c>` to
-  :doc:`readability-enum-initial-value <clang-tidy/checks/readability/enum-initial-value>`
-  was added.
-
 Changes in existing checks
 ^^^^^^^^^^^^^^^^^^^^^^^^^^
 
-- Improved :doc:`bugprone-assert-side-effect
-  <clang-tidy/checks/bugprone/assert-side-effect>` check by detecting side
-  effect from calling a method with non-const reference parameters.
-
-- Improved :doc:`bugprone-assignment-in-if-condition
-  <clang-tidy/checks/bugprone/assignment-in-if-condition>` check by ignoring
-  assignments in the C++20 ``requires`` clause.
-
-- Improved :doc:`bugprone-casting-through-void
-  <clang-tidy/checks/bugprone/casting-through-void>` check by ignoring casts
-  where source is already a ``void``` pointer, making middle ``void`` pointer
-  casts bug-free.
-
-- Improved :doc:`bugprone-exception-escape
-  <clang-tidy/checks/bugprone/exception-escape>`  check to correctly detect exception 
-  handler of type ``CV void *`` as catching all  ``CV`` compatible pointer types.
-
-- Improved :doc:`bugprone-forwarding-reference-overload
-  <clang-tidy/checks/bugprone/forwarding-reference-overload>`
-  check to ignore deleted constructors which won't hide other overloads.
-
-- Improved :doc:`bugprone-implicit-widening-of-multiplication-result
-  <clang-tidy/checks/bugprone/implicit-widening-of-multiplication-result>` check
-  by adding an option to ignore constant expressions of signed integer types
-  that fit in the source expression type.
-
-- Improved :doc:`bugprone-inc-dec-in-conditions
-  <clang-tidy/checks/bugprone/inc-dec-in-conditions>` check to ignore code
-  within unevaluated contexts, such as ``decltype``.
-
-- Improved :doc:`bugprone-lambda-function-name<clang-tidy/checks/bugprone/lambda-function-name>`
-  check by ignoring ``__func__`` macro in lambda captures, initializers of
-  default parameters and nested function declarations.
-
-- Improved :doc:`bugprone-multi-level-implicit-pointer-conversion
-  <clang-tidy/checks/bugprone/multi-level-implicit-pointer-conversion>` check
-  by ignoring implicit pointer conversions that are part of a cast expression.
-
-- Improved :doc:`bugprone-non-zero-enum-to-bool-conversion
-  <clang-tidy/checks/bugprone/non-zero-enum-to-bool-conversion>` check by
-  eliminating false positives resulting from direct usage of bitwise operators
-  within parentheses.
-
-- Improved :doc:`bugprone-optional-value-conversion
-  <clang-tidy/checks/bugprone/optional-value-conversion>` check by eliminating
-  false positives resulting from use of optionals in unevaluated context.
-
-- Improved :doc:`bugprone-sizeof-expression
-  <clang-tidy/checks/bugprone/sizeof-expression>` check by clarifying the
-  diagnostics, eliminating some false positives and adding a new
-  (off-by-default) option `WarnOnSizeOfPointer` that reports all
-  ``sizeof(pointer)`` expressions (except for a few that are idiomatic).
-
-- Improved :doc:`bugprone-suspicious-include
-  <clang-tidy/checks/bugprone/suspicious-include>` check by replacing the local
-  options `HeaderFileExtensions` and `ImplementationFileExtensions` by the
-  global options of the same name.
-
-- Improved :doc:`bugprone-too-small-loop-variable
-  <clang-tidy/checks/bugprone/too-small-loop-variable>` check by incorporating
-  better support for ``const`` loop boundaries.
-
-- Improved :doc:`bugprone-unused-local-non-trivial-variable
-  <clang-tidy/checks/bugprone/unused-local-non-trivial-variable>` check by
-  ignoring local variable with ``[maybe_unused]`` attribute.
-
-- Improved :doc:`bugprone-unused-return-value
-  <clang-tidy/checks/bugprone/unused-return-value>` check by updating the
-  parameter `CheckedFunctions` to support regexp, avoiding false positive for
-  function with the same prefix as the default argument, e.g. ``std::unique_ptr``
-  and ``std::unique``, avoiding false positive for assignment operator overloading.
-
-- Improved :doc:`bugprone-use-after-move
-  <clang-tidy/checks/bugprone/use-after-move>` check to also handle
-  calls to ``std::forward``. Fixed sequencing of designated initializers. Fixed
-  sequencing of callees: In C++17 and later, the callee of a function is guaranteed
-  to be sequenced before the arguments, so don't warn if the use happens in the
-  callee and the move happens in one of the arguments.
-
-- Improved :doc:`cppcoreguidelines-avoid-non-const-global-variables
-  <clang-tidy/checks/cppcoreguidelines/avoid-non-const-global-variables>` check
-  with a new option `AllowInternalLinkage` to disable the warning for variables
-  with internal linkage.
-
-- Improved :doc:`cppcoreguidelines-macro-usage
-  <clang-tidy/checks/cppcoreguidelines/macro-usage>` check by ignoring macro with
-  hash preprocessing token.
-
-- Improved :doc:`cppcoreguidelines-missing-std-forward
-  <clang-tidy/checks/cppcoreguidelines/missing-std-forward>` check by no longer
-  giving false positives for deleted functions, by fixing false negatives when only
-  a few parameters are forwarded and by ignoring parameters without a name (unused
-  arguments).
-
-- Improved :doc:`cppcoreguidelines-owning-memory
-  <clang-tidy/checks/cppcoreguidelines/owning-memory>` check to properly handle
-  return type in lambdas and in nested functions.
-
-- Improved :doc:`cppcoreguidelines-prefer-member-initializer
-  <clang-tidy/checks/cppcoreguidelines/prefer-member-initializer>` check
-  by removing enforcement of rule `C.48
-  <https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines#c48-prefer-in-class-initializers-to-member-initializers-in-constructors-for-constant-initializers>`_,
-  which was deprecated since :program:`clang-tidy` 17. This rule is now covered
-  by :doc:`cppcoreguidelines-use-default-member-init
-  <clang-tidy/checks/cppcoreguidelines/use-default-member-init>`. Fixed
-  incorrect hints when using list-initialization.
-
-- Improved :doc:`cppcoreguidelines-special-member-functions
-  <clang-tidy/checks/cppcoreguidelines/special-member-functions>` check with a
-  new option `AllowImplicitlyDeletedCopyOrMove`, which removes the requirement
-  for explicit copy or move special member functions when they are already
-  implicitly deleted.
-
-- Improved :doc:`google-build-namespaces
-  <clang-tidy/checks/google/build-namespaces>` check by replacing the local
-  option `HeaderFileExtensions` by the global option of the same name.
-
-- Improved :doc:`google-explicit-constructor
-  <clang-tidy/checks/google/explicit-constructor>` check to better handle
-  C++20 `explicit(bool)`.
-
-- Improved :doc:`google-global-names-in-headers
-  <clang-tidy/checks/google/global-names-in-headers>` check by replacing the local
-  option `HeaderFileExtensions` by the global option of the same name.
-
-- Improved :doc:`google-runtime-int <clang-tidy/checks/google/runtime-int>`
-  check performance through optimizations.
-
-- Improved :doc:`hicpp-signed-bitwise <clang-tidy/checks/hicpp/signed-bitwise>`
-  check by ignoring false positives involving positive integer literals behind
-  implicit casts when `IgnorePositiveIntegerLiterals` is enabled.
-
-- Improved :doc:`hicpp-ignored-remove-result <clang-tidy/checks/hicpp/ignored-remove-result>`
-  check by ignoring other functions with same prefixes as the target specific
-  functions.
-
-- Improved :doc:`linuxkernel-must-check-errs
-  <clang-tidy/checks/linuxkernel/must-check-errs>` check documentation to
-  consistently use the check's proper name.
-
-- Improved :doc:`llvm-header-guard
-  <clang-tidy/checks/llvm/header-guard>` check by replacing the local
-  option `HeaderFileExtensions` by the global option of the same name.
-
-- Improved :doc:`misc-const-correctness
-  <clang-tidy/checks/misc/const-correctness>` check by avoiding infinite recursion
-  for recursive functions with forwarding reference parameters and reference
-  variables which refer to themselves. Also adapted the check to work with
-  function-try-blocks.
-
-- Improved :doc:`misc-definitions-in-headers
-  <clang-tidy/checks/misc/definitions-in-headers>` check by replacing the local
-  option `HeaderFileExtensions` by the global option of the same name.
-  Additionally, the option `UseHeaderFileExtensions` is removed, so that the
-  check uses the `HeaderFileExtensions` option unconditionally.
-
-- Improved :doc:`misc-header-include-cycle
-  <clang-tidy/checks/misc/header-include-cycle>` check by avoiding crash for self
-  include cycles.
-
-- Improved :doc:`misc-unused-using-decls
-  <clang-tidy/checks/misc/unused-using-decls>` check by replacing the local
-  option `HeaderFileExtensions` by the global option of the same name.
-
-- Improved :doc:`misc-use-anonymous-namespace
-  <clang-tidy/checks/misc/use-anonymous-namespace>` check by replacing the local
-  option `HeaderFileExtensions` by the global option of the same name.
-
-- Improved :doc:`modernize-avoid-c-arrays
-  <clang-tidy/checks/modernize/avoid-c-arrays>` check by introducing the new
-  `AllowStringArrays` option, enabling the exclusion of array types with deduced
-  length initialized from string literals.
-
-- Improved :doc:`modernize-loop-convert
-  <clang-tidy/checks/modernize/loop-convert>` check by ensuring that fix-its
-  don't remove parentheses used in ``sizeof`` calls when they have array index
-  accesses as arguments.
-
-- Improved :doc:`modernize-use-constraints
-  <clang-tidy/checks/modernize/use-constraints>` check by fixing a crash that
-  occurred in some scenarios and excluding system headers from analysis.
-
-- Improved :doc:`modernize-use-nullptr
-  <clang-tidy/checks/modernize/use-nullptr>` check to include support for C23,
-  which also has introduced the ``nullptr`` keyword.
-
-- Improved :doc:`modernize-use-override
-  <clang-tidy/checks/modernize/use-override>` check to also remove any trailing
-  whitespace when deleting the ``virtual`` keyword.
-
-- Improved :doc:`modernize-use-starts-ends-with
-  <clang-tidy/checks/modernize/use-starts-ends-with>` check to also handle
-  calls to ``compare`` method.
-
-- Improved :doc:`modernize-use-std-print
-  <clang-tidy/checks/modernize/use-std-print>` check to not crash if the
-  format string parameter of the function to be replaced is not of the
-  expected type.
-
-- Improved :doc:`modernize-use-using <clang-tidy/checks/modernize/use-using>`
-  check by adding support for detection of typedefs declared on function level.
-
-- Improved :doc:`performance-inefficient-vector-operation
-  <clang-tidy/checks/performance/inefficient-vector-operation>` fixing false
-  negatives caused by different variable definition type and variable initial
-  value type in loop initialization expression.
-
-- Improved :doc:`performance-move-const-arg
-  <clang-tidy/checks/performance/move-const-arg>` check by ignoring
-  ``std::move()`` calls when their target is used as an rvalue.
-
-- Improved :doc:`performance-unnecessary-copy-initialization
-  <clang-tidy/checks/performance/unnecessary-copy-initialization>` check by
-  detecting more cases of constant access. In particular, pointers can be
-  analyzed, so the check now handles the common patterns
-  `const auto e = (*vector_ptr)[i]` and `const auto e = vector_ptr->at(i);`.
-  Calls to mutable function where there exists a `const` overload are also
-  handled. Fix crash in the case of a non-member operator call.
-
-- Improved :doc:`performance-unnecessary-value-param
-  <clang-tidy/checks/performance/unnecessary-value-param>` check
-  detecting more cases for template functions including lambdas with ``auto``.
-  E.g., ``std::sort(a.begin(), a.end(), [](auto x, auto y) { return a > b; });``
-  will be detected for expensive to copy types. Fixed false positives for
-  dependent call expressions.
-
-- Improved :doc:`readability-avoid-return-with-void-value
-  <clang-tidy/checks/readability/avoid-return-with-void-value>` check by adding
-  fix-its.
-
-- Improved :doc:`readability-const-return-type
-  <clang-tidy/checks/readability/const-return-type>` check to eliminate false
-  positives when returning types with const not at the top level.
-
-- Improved :doc:`readability-container-size-empty
-  <clang-tidy/checks/readability/container-size-empty>` check to prevent false
-  positives when utilizing ``size`` or ``length`` methods that accept parameter.
-  Fixed crash when facing template user defined literals.
-
-- Improved :doc:`readability-duplicate-include
-  <clang-tidy/checks/readability/duplicate-include>` check by excluding include
-  directives that form the filename using macro.
-
-- Improved :doc:`readability-else-after-return
-  <clang-tidy/checks/readability/else-after-return>` check to ignore
-  `if consteval` statements, for which the `else` branch must not be removed.
-
-- Improved :doc:`readability-identifier-naming
-  <clang-tidy/checks/readability/identifier-naming>` check in `GetConfigPerFile`
-  mode by resolving symbolic links to header files. Fixed handling of Hungarian
-  Prefix when configured to `LowerCase`. Added support for renaming designated
-  initializers. Added support for renaming macro arguments. Fixed renaming
-  conflicts arising from out-of-line member function template definitions.
-
-- Improved :doc:`readability-implicit-bool-conversion
-  <clang-tidy/checks/readability/implicit-bool-conversion>` check to provide
-  valid fix suggestions for ``static_cast`` without a preceding space and
-  fixed problem with duplicate parentheses in double implicit casts. Corrected
-  the fix suggestions for C23 and later by using C-style casts instead of
-  ``static_cast``. Fixed false positives in C++20 spaceship operator by ignoring
-  casts in implicit and defaulted functions.
-
-- Improved :doc:`readability-redundant-inline-specifier
-  <clang-tidy/checks/readability/redundant-inline-specifier>` check to properly
-  emit warnings for static data member with an in-class initializer.
-
-- Improved :doc:`readability-redundant-member-init
-  <clang-tidy/checks/readability/redundant-member-init>` check to avoid
-  false-positives when type of the member does not match the type of the
-  initializer.
-
-- Improved :doc:`readability-static-accessed-through-instance
-  <clang-tidy/checks/readability/static-accessed-through-instance>` check to
-  support calls to overloaded operators as base expression and provide fixes to
-  expressions with side-effects.
-
-- Improved :doc:`readability-simplify-boolean-expr
-  <clang-tidy/checks/readability/simplify-boolean-expr>` check to avoid to emit
-  warning for macro when IgnoreMacro option is enabled and improve messages
-  when auto-fix does not work.
-
-- Improved :doc:`readability-static-definition-in-anonymous-namespace
-  <clang-tidy/checks/readability/static-definition-in-anonymous-namespace>`
-  check by resolving fix-it overlaps in template code by disregarding implicit
-  instances.
-
-- Improved :doc:`readability-string-compare
-  <clang-tidy/checks/readability/string-compare>` check to also detect
-  usages of ``std::string_view::compare``. Added a `StringLikeClasses` option
-  to detect usages of ``compare`` method in custom string-like classes.
-
 Removed checks
 ^^^^^^^^^^^^^^
 
-- Removed `cert-dcl21-cpp`, which was deprecated since :program:`clang-tidy` 17,
-  since the rule DCL21-CPP has been removed from the CERT guidelines.
-
 Miscellaneous
 ^^^^^^^^^^^^^
 
-- Fixed incorrect formatting in :program:`clang-apply-replacements` when no
-  `--format` option is specified. Now :program:`clang-apply-replacements`
-  applies formatting only with the option.
-
 Improvements to include-fixer
 -----------------------------
 
diff --git a/clang/docs/ReleaseNotes.rst b/clang/docs/ReleaseNotes.rst
index 24d88ed..83fd5dc 100644
--- a/clang/docs/ReleaseNotes.rst
+++ b/clang/docs/ReleaseNotes.rst
@@ -37,136 +37,23 @@
 Clang |release| because of the opportunity they pose for disruption to existing
 code bases.
 
-- Setting the deprecated CMake variable ``GCC_INSTALL_PREFIX`` (which sets the
-  default ``--gcc-toolchain=``) now leads to a fatal error.
-
 C/C++ Language Potentially Breaking Changes
 -------------------------------------------
 
-- Clang now supports raw string literals in ``-std=gnuXY`` mode as an extension in
-  C99 and later. This behaviour can also be overridden using ``-f[no-]raw-string-literals``.
-  Support of raw string literals in C++ is not affected. Fixes (#GH85703).
-
 C++ Specific Potentially Breaking Changes
 -----------------------------------------
-- Clang now diagnoses function/variable templates that shadow their own template parameters, e.g. ``template<class T> void T();``.
-  This error can be disabled via `-Wno-strict-primary-template-shadow` for compatibility with previous versions of clang.
-
-- The behavior controlled by the `-frelaxed-template-template-args` flag is now
-  on by default, and the flag is deprecated. Until the flag is finally removed,
-  it's negative spelling can be used to obtain compatibility with previous
-  versions of clang. The deprecation warning for the negative spelling can be
-  disabled with `-Wno-deprecated-no-relaxed-template-template-args`.
-
-- Clang no longer tries to form pointer-to-members from qualified and parenthesized unevaluated expressions
-  such as ``decltype(&(foo::bar))``. (#GH40906).
-
-- Clang now performs semantic analysis for unary operators with dependent operands
-  that are known to be of non-class non-enumeration type prior to instantiation.
-
-  This change uncovered a bug in libstdc++ 14.1.0 which may cause compile failures
-  on systems using that version of libstdc++ and Clang 19, with an error that looks
-  something like this:
-
-  .. code-block:: text
-
-    <source>:4:5: error: expression is not assignable
-    4 |     ++this;
-      |     ^ ~~~~
-
-  To fix this, update libstdc++ to version 14.1.1 or greater.
 
 ABI Changes in This Version
 ---------------------------
-- Fixed Microsoft name mangling of implicitly defined variables used for thread
-  safe static initialization of static local variables. This change resolves
-  incompatibilities with code compiled by MSVC but might introduce
-  incompatibilities with code compiled by earlier versions of Clang when an
-  inline member function that contains a static local variable with a dynamic
-  initializer is declared with ``__declspec(dllimport)``. (#GH83616).
-
-- Fixed Microsoft name mangling of lifetime extended temporary objects. This
-  change corrects missing back reference registrations that could result in
-  incorrect back reference indexes and suprising demangled name results. Since
-  MSVC uses a different mangling for these objects, compatibility is not affected.
-  (#GH85423).
-
-- Fixed Microsoft calling convention for returning certain classes with a
-  templated constructor. If a class has a templated constructor, it should
-  be returned indirectly even if it meets all the other requirements for
-  returning a class in a register. This affects some uses of std::pair.
-  (#GH86384).
-
-- Fixed Microsoft calling convention when returning classes that have a deleted
-  copy assignment operator. Such a class should be returned indirectly.
-
-- Removed the global alias that was pointing to AArch64 Function Multiversioning
-  ifuncs. Its purpose was to preserve backwards compatibility when the ".ifunc"
-  suffix got removed from the name mangling. The alias interacts badly with
-  GlobalOpt (see the issue #96197).
-
-- Fixed Microsoft name mangling for auto non-type template arguments of pointer
-  type for MSVC 1920+. This change resolves incompatibilities with code compiled
-  by MSVC 1920+ but will introduce incompatibilities with code compiled by
-  earlier versions of Clang unless such code is built with the compiler option
-  `-fms-compatibility-version=19.14` to imitate the MSVC 1914 mangling behavior.
-
-- Fixed Microsoft name mangling for auto non-type template arguments of pointer
-  to member type for MSVC 1920+. This change resolves incompatibilities with code
-  compiled by MSVC 1920+ but will introduce incompatibilities with code compiled by
-  earlier versions of Clang unless such code is built with the compiler option
-  `-fms-compatibility-version=19.14` to imitate the MSVC 1914 mangling behavior.
-  (GH#70899).
 
 AST Dumping Potentially Breaking Changes
 ----------------------------------------
 
-- The text ast-dumper has improved printing of TemplateArguments.
-- The text decl-dumper prints template parameters' trailing requires expressions now.
-
 Clang Frontend Potentially Breaking Changes
 -------------------------------------------
-- Removed support for constructing on-stack ``TemplateArgumentList``\ s; interfaces should instead
-  use ``ArrayRef<TemplateArgument>`` to pass template arguments. Transitioning internal uses to
-  ``ArrayRef<TemplateArgument>`` reduces AST memory usage by 0.4% when compiling clang, and is
-  expected to show similar improvements on other workloads.
-
-- The ``-Wgnu-binary-literal`` diagnostic group no longer controls any
-  diagnostics. Binary literals are no longer a GNU extension, they're now a C23
-  extension which is controlled via ``-pedantic`` or ``-Wc23-extensions``. Use
-  of ``-Wno-gnu-binary-literal`` will no longer silence this pedantic warning,
-  which may break existing uses with ``-Werror``.
-
-- The normalization of 3 element target triples where ``-none-`` is the middle
-  element has changed. For example, ``armv7m-none-eabi`` previously normalized
-  to ``armv7m-none-unknown-eabi``, with ``none`` for the vendor and ``unknown``
-  for the operating system. It now normalizes to ``armv7m-unknown-none-eabi``,
-  which has ``unknown`` vendor and ``none`` operating system.
-
-  The affected triples are primarily for bare metal Arm where it is intended
-  that ``none`` means that there is no operating system. As opposed to an unknown
-  type of operating system.
-
-  This change my cause clang to not find libraries, or libraries to be built at
-  different file system locations. This can be fixed by changing your builds to
-  use the new normalized triple. However, we recommend instead getting the
-  normalized triple from clang itself, as this will make your builds more
-  robust in case of future changes::
-
-    $ clang --target=<your target triple> -print-target-triple
-    <the normalized target triple>
-
-- The ``hasTypeLoc`` AST matcher will no longer match a ``classTemplateSpecializationDecl``;
-  existing uses should switch to ``templateArgumentLoc`` or ``hasAnyTemplateArgumentLoc`` instead.
 
 Clang Python Bindings Potentially Breaking Changes
 --------------------------------------------------
-- Renamed ``CursorKind`` variant 272 from ``OMP_TEAMS_DISTRIBUTE_DIRECTIVE``
-  to ``OMP_TEAMS_DISTRIBUTE_SIMD_DIRECTIVE``. The previous name was incorrect, it was a duplicate
-  of variant 271.
-- Renamed ``TypeKind`` variant 162 from ``OBJCCLASS`` to ``OBJCTYPEPARAM``.
-  The previous name was incorrect, it was a duplicate of variant 28.
-- Refactored enum implementation, switching to the standard library `Enum` type.
 
 What's New in Clang |release|?
 ==============================
@@ -175,961 +62,81 @@
 infrastructure are described first, followed by language-specific
 sections with improvements to Clang's support for those languages.
 
-- Implemented improvements to BMIs for C++20 Modules that can reduce
-  the number of rebuilds during incremental recompilation. We are seeking
-  feedback from Build System authors and other interested users, especially
-  when you feel Clang changes the BMI and misses an opportunity to avoid
-  recompilations or causes correctness issues. See StandardCPlusPlusModules
-  `StandardCPlusPlusModules <StandardCPlusPlusModules.html>`_ for more details.
-
-- The ``\par`` documentation comment command now supports an optional
-  argument, which denotes the header of the paragraph started by
-  an instance of the ``\par`` command comment. The implementation
-  of the argument handling matches its semantics
-  `in Doxygen <https://www.doxygen.nl/manual/commands.html#cmdpar>`.
-  Namely, any text on the same line as the ``\par`` command will become
-  a header for the paragaph, and if there is no text then the command
-  will start a new paragraph.
-
 C++ Language Changes
 --------------------
-- C++17 support is now completed, with the enablement of the
-  relaxed temlate template argument matching rules introduced in P0522,
-  which was retroactively applied as a defect report.
-  While the implementation already existed since Clang 4, it was turned off by
-  default, and was controlled with the `-frelaxed-template-template-args` flag.
-  In this release, we implement provisional wording for a core defect on
-  P0522 (CWG2398), which avoids the most serious compatibility issues caused
-  by it, allowing us to enable it by default in this release.
-  The flag is now deprecated, and will be removed in the next release, but can
-  still be used to turn it off and regain compatibility with previous versions
-  (#GH36505).
-- Implemented ``_BitInt`` literal suffixes ``__wb`` or ``__WB`` as a Clang extension with ``unsigned`` modifiers also allowed. (#GH85223).
 
 C++17 Feature Support
 ^^^^^^^^^^^^^^^^^^^^^
-- Clang now exposes ``__GCC_DESTRUCTIVE_SIZE`` and ``__GCC_CONSTRUCTIVE_SIZE``
-  predefined macros to support standard library implementations of
-  ``std::hardware_destructive_interference_size`` and
-  ``std::hardware_constructive_interference_size``, respectively. These macros
-  are predefined in all C and C++ language modes. The values the macros
-  expand to are not stable between releases of Clang and do not need to match
-  the values produced by GCC, so these macros should not be used from header
-  files because they may not be stable across multiple TUs (the values may vary
-  based on compiler version as well as CPU tuning). #GH60174
 
 C++14 Feature Support
 ^^^^^^^^^^^^^^^^^^^^^
-- Sized deallocation is enabled by default in C++14 onwards. The user may specify
-  ``-fno-sized-deallocation`` to disable it if there are some regressions.
 
 C++20 Feature Support
 ^^^^^^^^^^^^^^^^^^^^^
 
-- Clang won't perform ODR checks for decls in the global module fragment any
-  more to ease the implementation and improve the user's using experience.
-  This follows the MSVC's behavior. Users interested in testing the more strict
-  behavior can use the flag '-Xclang -fno-skip-odr-check-in-gmf'.
-  (#GH79240).
-
-- Implemented the `__is_layout_compatible` and `__is_pointer_interconvertible_base_of`
-  intrinsics to support
-  `P0466R5: Layout-compatibility and Pointer-interconvertibility Traits <https://wg21.link/P0466R5>`_.
-
-- Clang now implements [module.import]p7 fully. Clang now will import module
-  units transitively for the module units coming from the same module of the
-  current module units. Fixes #GH84002
-
-- Initial support for class template argument deduction (CTAD) for type alias
-  templates (`P1814R0 <https://wg21.link/p1814r0>`_).
-  (#GH54051).
-
-- We have sufficient confidence and experience with the concepts implementation
-  to update the ``__cpp_concepts`` macro to `202002L`. This enables
-  ``<expected>`` from libstdc++ to work correctly with Clang.
-
-- User defined constructors are allowed for copy-list-initialization with CTAD.
-  (#GH62925).
-
 C++23 Feature Support
 ^^^^^^^^^^^^^^^^^^^^^
 
-- Implemented `P2718R0: Lifetime extension in range-based for loops <https://wg21.link/P2718R0>`_. Also
-  materialize temporary object which is a prvalue in discarded-value expression.
-- Implemented `P1774R8: Portable assumptions <https://wg21.link/P1774R8>`_.
-
-- Implemented `P2448R2: Relaxing some constexpr restrictions <https://wg21.link/P2448R2>`_.
-  Note, the ``-Winvalid-constexpr`` diagnostic is now disabled in C++23 mode,
-  but can be explicitly specified to retain the old diagnostic checking
-  behavior.
-
-- Added a ``__reference_converts_from_temporary`` builtin, completing the necessary compiler support for
-  `P2255R2: Type trait to determine if a reference binds to a temporary <https://wg21.link/P2255R2>`_.
-
-- Implemented `P2797R0: Static and explicit object member functions with the same parameter-type-lists <https://wg21.link/P2797R0>`_.
-  This completes the support for "deducing this".
-
 C++2c Feature Support
 ^^^^^^^^^^^^^^^^^^^^^
 
-- Implemented `P2662R3 Pack Indexing <https://wg21.link/P2662R3>`_.
-
-- Implemented `P2573R2: = delete("should have a reason"); <https://wg21.link/P2573R2>`_
-
-- Implemented `P0609R3: Attributes for Structured Bindings <https://wg21.link/P0609R3>`_
-
-- Implemented `P2748R5 Disallow Binding a Returned Glvalue to a Temporary <https://wg21.link/P2748R5>`_.
-
-- Implemented `P2809R3: Trivial infinite loops are not Undefined Behavior <https://wg21.link/P2809R3>`_.
-
-- Implemented `P3144R2 Deleting a Pointer to an Incomplete Type Should be Ill-formed <https://wg21.link/P3144R2>`_.
-
-- Implemented `P2963R3 Ordering of constraints involving fold expressions <https://wg21.link/P2963R3>`_.
-
-
 Resolutions to C++ Defect Reports
 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-- Substitute template parameter pack, when it is not explicitly specified
-  in the template parameters, but is deduced from a previous argument. (#GH78449)
-
-- Type qualifications are now ignored when evaluating layout compatibility
-  of two types.
-  (`CWG1719: Layout compatibility and cv-qualification revisited <https://cplusplus.github.io/CWG/issues/1719.html>`_).
-
-- Alignment of members is now respected when evaluating layout compatibility
-  of structs.
-  (`CWG2583: Common initial sequence should consider over-alignment <https://cplusplus.github.io/CWG/issues/2583.html>`_).
-
-- ``[[no_unique_address]]`` is now respected when evaluating layout
-  compatibility of two types.
-  (`CWG2759: [[no_unique_address] and common initial sequence  <https://cplusplus.github.io/CWG/issues/2759.html>`_).
-
-- Clang now diagnoses declarative nested-name-specifiers with pack-index-specifiers.
-  (`CWG2858: Declarative nested-name-specifiers and pack-index-specifiers <https://cplusplus.github.io/CWG/issues/2858.html>`_).
-
-- Clang now allows attributes on concepts.
-  (`CWG2428: Deprecating a concept <https://cplusplus.github.io/CWG/issues/2428.html>`_).
-
-- P0522 implementation is enabled by default in all language versions, and
-  provisional wording for CWG2398 is implemented.
-
-- Clang now performs type-only lookup for the name in ``using enum`` declaration.
-  (`CWG2877: Type-only lookup for using-enum-declarator <https://cplusplus.github.io/CWG/issues/2877.html>`_).
-
-- Clang now requires a template argument list after a template keyword.
-  (`CWG96: Syntactic disambiguation using the template keyword <https://cplusplus.github.io/CWG/issues/96.html>`_).
-
-- Clang now considers ``noexcept(typeid(expr))`` more carefully, instead of always assuming that ``std::bad_typeid`` can be thrown.
-  (`CWG2191: Incorrect result for noexcept(typeid(v)) <https://cplusplus.github.io/CWG/issues/2191.html>`_).
 
 C Language Changes
 ------------------
 
 C2y Feature Support
 ^^^^^^^^^^^^^^^^^^^
-- Clang now enables C2y mode with ``-std=c2y``. This sets ``__STDC_VERSION__``
-  to ``202400L`` so that it's greater than the value for C23. The value of this
-  macro is subject to change in the future.
 
 C23 Feature Support
 ^^^^^^^^^^^^^^^^^^^
-- No longer diagnose use of binary literals as an extension in C23 mode. Fixes
-  #GH72017.
-
-- Corrected parsing behavior for the ``alignas`` specifier/qualifier in C23. We
-  previously handled it as an attribute as in C++, but there are parsing
-  differences. The behavioral differences are:
-
-  .. code-block:: c
-
-     struct alignas(8) /* was accepted, now rejected */ S {
-       char alignas(8) /* was rejected, now accepted */ C;
-     };
-     int i alignas(8) /* was accepted, now rejected */ ;
-
-  Fixes (#GH81472).
-
-- Clang now generates predefined macros of the form ``__TYPE_FMTB__`` and
-  ``__TYPE_FMTb__`` (e.g., ``__UINT_FAST64_FMTB__``) in C23 mode for use with
-  macros typically exposed from ``<inttypes.h>``, such as ``PRIb8``. (#GH81896)
-
-- Clang now supports `N3018 The constexpr specifier for object definitions`
-  <https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3018.htm>`_.
-
-- Properly promote bit-fields of bit-precise integer types to the field's type
-  rather than to ``int``. #GH87641
-
-- Added the ``INFINITY`` and ``NAN`` macros to Clang's ``<float.h>``
-  freestanding implementation; these macros were defined in ``<math.h>`` in C99
-  but C23 added them to ``<float.h>`` in
-  `WG14 N2848 <https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2848.pdf>`_.
-
-- Clang now supports `N3017 <https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3017.htm>`_
-  ``#embed`` - a scannable, tooling-friendly binary resource inclusion mechanism.
-
-- Added the ``FLT_NORM_MAX``, ``DBL_NORM_MAX``, and ``LDBL_NORM_MAX`` to the
-  freestanding implementation of ``<float.h>`` that ships with Clang.
-
-- Compiler support for `N2653 char8_t: A type for UTF-8 characters and strings`
-  <https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2653.htm>`_: ``u8`` string
-  literals are now of type ``char8_t[N]`` in C23 and expose
-  ``__CLANG_ATOMIC_CHAR8_T_LOCK_FREE``/``__GCC_ATOMIC_CHAR8_T_LOCK_FREE`` to
-  implement the corresponding macro in ``<stdatomic.h>``.
-
-Non-comprehensive list of changes in this release
--------------------------------------------------
-
-- Added ``__builtin_readsteadycounter`` for reading fixed frequency hardware
-  counters.
-
-- ``__builtin_addc``, ``__builtin_subc``, and the other sizes of those
-  builtins are now constexpr and may be used in constant expressions.
-
-- Added ``__builtin_popcountg`` as a type-generic alternative to
-  ``__builtin_popcount{,l,ll}`` with support for any unsigned integer type. Like
-  the previous builtins, this new builtin is constexpr and may be used in
-  constant expressions.
-
-- Lambda expressions are now accepted in C++03 mode as an extension.
-
-- Added ``__builtin_clzg`` and ``__builtin_ctzg`` as type-generic alternatives
-  to ``__builtin_clz{,s,l,ll}`` and ``__builtin_ctz{,s,l,ll}`` respectively,
-  with support for any unsigned integer type. Like the previous builtins, these
-  new builtins are constexpr and may be used in constant expressions.
-
-- ``__typeof_unqual__`` is available in all C modes as an extension, which behaves
-  like ``typeof_unqual`` from C23, similar to ``__typeof__`` and ``typeof``.
-
-- ``__builtin_reduce_{add|mul|xor|or|and|min|max}`` builtins now support scalable vectors.
-
-* Shared libraries linked with either the ``-ffast-math``, ``-Ofast``, or
-  ``-funsafe-math-optimizations`` flags will no longer enable flush-to-zero
-  floating-point mode by default. This decision can be overridden with use of
-  ``-mdaz-ftz``. This behavior now matches GCC's behavior.
-  (`#57589 <https://github.com/llvm/llvm-project/issues/57589>`_)
-
-* ``-fdenormal-fp-math=preserve-sign`` is no longer implied by ``-ffast-math``
-  on x86 systems.
-
-- Builtins ``__builtin_shufflevector()`` and ``__builtin_convertvector()`` may
-  now be used within constant expressions.
-
-- When compiling a constexpr function, Clang will check to see whether the
-  function can *never* be used in a constant expression context and issues a
-  diagnostic under the ``-Winvalid-constexpr`` diagostic flag (which defaults
-  to an error). This check can be expensive because the mere presence of a
-  function marked ``constexpr`` will cause us to undergo constant expression
-  evaluation, even if the function is not called within the translation unit
-  being compiled. Due to the expense, Clang no longer checks constexpr function
-  bodies when the function is defined in a system header file or when
-  ``-Winvalid-constexpr`` is not enabled for the function definition, which
-  should result in mild compile-time performance improvements.
-
-- Added ``__is_bitwise_cloneable`` which is used to check whether a type
-  can be safely copied by memcpy/memmove.
-
-- ``#pragma GCC diagnostic warning "-Wfoo"`` can now downgrade ``-Werror=foo``
-  errors and certain default-to-error ``-W`` diagnostics to warnings.
-
-- Support importing C++20 modules in clang-repl.
-
-- Added support for ``TypeLoc::dump()`` for easier debugging, and improved
-  textual and JSON dumping for various ``TypeLoc``-related nodes.
-
-- Clang can now emit distinct type-based alias analysis tags for incompatible
-  pointers, enabling more powerful alias analysis when accessing pointer types.
-  The new behavior can be enabled using ``-fpointer-tbaa``.
-
-- The ``__atomic_always_lock_free`` and ``__atomic_is_lock_free``
-  builtins may now return true if the pointer argument is a
-  compile-time constant (e.g. ``(void*)4``), and constant pointer is
-  sufficiently-aligned for the access requested. Previously, only the
-  type of the pointer was taken into account. This improves
-  compatibility with GCC's libstdc++.
 
 New Compiler Flags
 ------------------
-- ``-fsanitize=implicit-bitfield-conversion`` checks implicit truncation and
-  sign change.
-- ``-fsanitize=implicit-integer-conversion`` a group that replaces the previous
-  group ``-fsanitize=implicit-conversion``.
-
-- ``-Wmissing-designated-field-initializers``, grouped under ``-Wmissing-field-initializers``.
-  This diagnostic can be disabled to make ``-Wmissing-field-initializers`` behave
-  like it did before Clang 18.x. Fixes #GH56628
-
-- ``-fexperimental-modules-reduced-bmi`` enables the Reduced BMI for C++20 named modules.
-  See the document of standard C++ modules for details.
-
-- ``-fexperimental-late-parse-attributes`` enables an experimental feature to
-  allow late parsing certain attributes in specific contexts where they would
-  not normally be late parsed. Currently this allows late parsing the
-  `counted_by` attribute in C. See `Attribute Changes in Clang`_.
-
-- ``-fseparate-named-sections`` uses separate unique sections for global
-  symbols in named special sections (i.e. symbols annotated with
-  ``__attribute__((section(...)))``. This enables linker GC to collect unused
-  symbols without having to use a per-symbol section.
-
-- ``-fms-define-stdc`` and its clang-cl counterpart ``/Zc:__STDC__``.
-  Matches MSVC behaviour by defining ``__STDC__`` to ``1`` when
-  MSVC compatibility mode is used. It has no effect for C++ code.
-
-- ``-Wc++23-compat`` group was added to help migrating existing codebases
-  to C++23.
-
-- ``-Wc++2c-compat`` group was added to help migrating existing codebases
-  to upcoming C++26.
-
-- ``-fdisable-block-signature-string`` instructs clang not to emit the signature
-  string for blocks. Disabling the string can potentially break existing code
-  that relies on it. Users should carefully consider this possibiilty when using
-  the flag.
-
-- For the ARM target, added ``-Warm-interrupt-vfp-clobber`` that will emit a
-  diagnostic when an interrupt handler is declared and VFP is enabled.
-
-- ``-fpointer-tbaa`` enables emission of distinct type-based alias
-  analysis tags for incompatible pointers.
 
 Deprecated Compiler Flags
 -------------------------
 
-- The ``-Ofast`` command-line option has been deprecated. This option both
-  enables the ``-O3`` optimization-level, as well as enabling non-standard
-  ``-ffast-math`` behaviors. As such, it is somewhat misleading as an
-  "optimization level". Users are advised to switch to ``-O3 -ffast-math`` if
-  the use of non-standard math behavior is intended, and ``-O3`` otherwise.
-  See `RFC <https://discourse.llvm.org/t/rfc-deprecate-ofast/78687>`_ for details.
-
 Modified Compiler Flags
 -----------------------
-- Added a new diagnostic flag ``-Wreturn-mismatch`` which is grouped under
-  ``-Wreturn-type``, and moved some of the diagnostics previously controlled by
-  ``-Wreturn-type`` under this new flag. Fixes #GH72116.
-- ``-fsanitize=implicit-conversion`` is now a group for both
-  ``-fsanitize=implicit-integer-conversion`` and
-  ``-fsanitize=implicit-bitfield-conversion``.
-
-- Added ``-Wcast-function-type-mismatch`` under the ``-Wcast-function-type``
-  warning group. Moved the diagnostic previously controlled by
-  ``-Wcast-function-type`` to the new warning group and added
-  ``-Wcast-function-type-mismatch`` to ``-Wextra``. #GH76872
-
-  .. code-block:: c
-
-     int x(long);
-     typedef int (f2)(void*);
-     typedef int (f3)();
-
-     void func(void) {
-       // Diagnoses under -Wcast-function-type, -Wcast-function-type-mismatch,
-       // -Wcast-function-type-strict, -Wextra
-       f2 *b = (f2 *)x;
-       // Diagnoses under -Wcast-function-type, -Wcast-function-type-strict
-       f3 *c = (f3 *)x;
-     }
-
-- Carved out ``-Wformat`` warning about scoped enums into a subwarning and
-  make it controlled by ``-Wformat-pedantic``. Fixes #GH88595.
-
-- Trivial infinite loops (i.e loops with a constant controlling expresion
-  evaluating to ``true`` and an empty body such as ``while(1);``)
-  are considered infinite, even when the ``-ffinite-loop`` flag is set.
-
-- Diagnostics groups about compatibility with a particular C++ Standard version
-  now include dianostics about C++26 features that are not present in older
-  versions.
-
-- Removed the "arm interrupt calling convention" warning that was included in
-  ``-Wextra`` without its own flag. This warning suggested adding
-  ``__attribute__((interrupt))`` to functions that are called from interrupt
-  handlers to prevent clobbering VFP registers. Following this suggestion leads
-  to unpredictable behavior by causing multiple exception returns from one
-  exception. Fixes #GH34876.
 
 Removed Compiler Flags
 -------------------------
 
-- The ``-freroll-loops`` flag has been removed. It had no effect since Clang 13.
-- ``-m[no-]unaligned-access`` is removed for RISC-V and LoongArch.
-  ``-m[no-]strict-align``, also supported by GCC, should be used instead. (#GH85350)
-
 Attribute Changes in Clang
 --------------------------
-- Introduced a new function attribute ``__attribute__((amdgpu_max_num_work_groups(x, y, z)))`` or
-  ``[[clang::amdgpu_max_num_work_groups(x, y, z)]]`` for the AMDGPU target. This attribute can be
-  attached to HIP or OpenCL kernel function definitions to provide an optimization hint. The parameters
-  ``x``, ``y``, and ``z`` specify the maximum number of workgroups for the respective dimensions,
-  and each must be a positive integer when provided. The parameter ``x`` is required, while ``y`` and
-  ``z`` are optional with default value of 1.
-
-- The ``swiftasynccc`` attribute is now considered to be a Clang extension
-  rather than a language standard feature. Please use
-  ``__has_extension(swiftasynccc)`` to check the availability of this attribute
-  for the target platform instead of ``__has_feature(swiftasynccc)``. Also,
-  added a new extension query ``__has_extension(swiftcc)`` corresponding to the
-  ``__attribute__((swiftcc))`` attribute.
-
-- The ``_Nullable`` and ``_Nonnull`` family of type attributes can now apply
-  to certain C++ class types, such as smart pointers:
-  ``void useObject(std::unique_ptr<Object> _Nonnull obj);``.
-
-  This works for standard library types including ``unique_ptr``, ``shared_ptr``,
-  and ``function``. See
-  `the attribute reference documentation <https://llvm.org/docs/AttributeReference.html#nullability-attributes>`_
-  for the full list.
-
-- The ``_Nullable`` attribute can be applied to C++ class declarations:
-  ``template <class T> class _Nullable MySmartPointer {};``.
-
-  This allows the ``_Nullable`` and ``_Nonnull`` family of type attributes to
-  apply to this class.
-
-- Clang now warns that the ``exclude_from_explicit_instantiation`` attribute
-  is ignored when applied to a local class or a member thereof.
-
-- The ``clspv_libclc_builtin`` attribute has been added to allow clspv
-  (`OpenCL-C to Vulkan SPIR-V compiler <https://github.com/google/clspv>`_) to identify functions coming from libclc
-  (`OpenCL-C builtin library <https://libclc.llvm.org>`_).
-- The ``counted_by`` attribute is now allowed on pointers that are members of a
-  struct in C.
-
-- The ``counted_by`` attribute can now be late parsed in C when
-  ``-fexperimental-late-parse-attributes`` is passed but only when attribute is
-  used in the declaration attribute position. This allows using the
-  attribute on existing code where it previously impossible to do so without
-  re-ordering struct field declarations would break ABI as shown below.
-
-  .. code-block:: c
-
-     struct BufferTy {
-       /* Refering to `count` requires late parsing */
-       char* buffer __counted_by(count);
-       /* Swapping `buffer` and `count` to avoid late parsing would break ABI */
-       size_t count;
-     };
-
-- The attributes ``sized_by``, ``counted_by_or_null`` and ``sized_by_or_null```
-  have been added as variants on ``counted_by``, each with slightly different semantics.
-  ``sized_by`` takes a byte size parameter instead of an element count, allowing pointees
-  with unknown size. The ``counted_by_or_null`` and ``sized_by_or_null`` variants are equivalent
-  to their base variants, except the pointer can be null regardless of count/size value.
-  If the pointer is null the size is effectively 0. ``sized_by_or_null`` is needed to properly
-  annotate allocator functions like ``malloc`` that return a buffer of a given byte size, but can
-  also return null.
-
-- The ``guarded_by``, ``pt_guarded_by``, ``acquired_after``, ``acquired_before``
-  attributes now support referencing struct members in C. The arguments are also
-  now late parsed when ``-fexperimental-late-parse-attributes`` is passed like
-  for ``counted_by``.
-
-- Introduced new function type attributes ``[[clang::nonblocking]]``, ``[[clang::nonallocating]]``,
-  ``[[clang::blocking]]``, and ``[[clang::allocating]]``, with GNU-style variants as well.
-  The attributes declare constraints about a function's behavior pertaining to blocking and
-  heap memory allocation.
 
 Improvements to Clang's diagnostics
 -----------------------------------
-- Clang now emits an error instead of a warning for ``-Wundefined-internal``
-  when compiling with `-pedantic-errors` to conform to the C standard
-
-- Clang now applies syntax highlighting to the code snippets it
-  prints.
-
-- Clang now diagnoses member template declarations with multiple declarators.
-
-- Clang now diagnoses use of the ``template`` keyword after declarative nested
-  name specifiers.
-
-- The ``-Wshorten-64-to-32`` diagnostic is now grouped under ``-Wimplicit-int-conversion`` instead
-   of ``-Wconversion``. Fixes #GH69444.
-
-- Clang now uses thousand separators when printing large numbers in integer overflow diagnostics.
-  Fixes #GH80939.
-
-- Clang now diagnoses friend declarations with an ``enum`` elaborated-type-specifier in language modes after C++98.
-
-- Added diagnostics for C11 keywords being incompatible with language standards
-  before C11, under a new warning group: ``-Wpre-c11-compat``.
-
-- Now diagnoses an enumeration constant whose value is larger than can be
-  represented by ``unsigned long long``, which can happen with a large constant
-  using the ``wb`` or ``uwb`` suffix. The maximal underlying type is currently
-  ``unsigned long long``, but this behavior may change in the future when Clang
-  implements
-  `WG14 N3029 <https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3029.htm>`_.
-  (#GH69352).
-
-- Clang now diagnoses extraneous template parameter lists as a language extension.
-
-- Clang now diagnoses declarative nested name specifiers that name alias templates.
-
-- Clang now diagnoses lambda function expressions being implicitly cast to boolean values, under ``-Wpointer-bool-conversion``.
-  Fixes #GH82512.
-
-- Clang now provides improved warnings for the ``cleanup`` attribute to detect misuse scenarios,
-  such as attempting to call ``free`` on an unallocated object. Fixes #GH79443.
-
-- Clang no longer warns when the ``bitand`` operator is used with boolean
-  operands, distinguishing it from potential typographical errors or unintended
-  bitwise operations. Fixes #GH77601.
-
-- Clang now correctly diagnoses no arguments to a variadic macro parameter as a C23/C++20 extension.
-  Fixes #GH84495.
-
-- Clang no longer emits a ``-Wexit-time destructors`` warning on static variables explicitly
-  annotated with the ``clang::always_destroy`` attribute.
-  Fixes #GH68686, #GH86486
-
-- ``-Wmicrosoft``, ``-Wgnu``, or ``-pedantic`` is now required to diagnose C99
-  flexible array members in a union or alone in a struct. Fixes GH#84565.
-
-- Clang now no longer diagnoses type definitions in ``offsetof`` in C23 mode.
-  Fixes #GH83658.
-
-- New ``-Wformat-signedness`` diagnostic that warn if the format string requires an
-  unsigned argument and the argument is signed and vice versa.
-
-- Clang now emits ``unused argument`` warning when the -fmodule-output flag is used
-  with an input that is not of type c++-module.
-
-- Clang emits a ``-Wreturn-stack-address`` warning if a function returns a pointer or
-  reference to a struct literal. Fixes #GH8678
-
-- Clang emits a ``-Wunused-but-set-variable`` warning on C++ variables whose declaration
-  (with initializer) entirely consist the condition expression of a if/while/for construct
-  but are not actually used in the body of the if/while/for construct. Fixes #GH41447
-
-- Clang emits a diagnostic when a tentative array definition is assumed to have
-  a single element, but that diagnostic was never given a diagnostic group.
-  Added the ``-Wtentative-definition-array`` warning group to cover this.
-  Fixes #GH87766
-
-- Clang now uses the correct type-parameter-key (``class`` or ``typename``) when printing
-  template template parameter declarations.
-
-- Clang now diagnoses requires expressions with explicit object parameters.
-
-- Clang now looks up members of the current instantiation in the template definition context
-  if the current instantiation has no dependent base classes.
-
-  .. code-block:: c++
-
-     template<typename T>
-     struct A {
-       int f() {
-         return this->x; // error: no member named 'x' in 'A<T>'
-       }
-     };
-
-- Clang emits a ``-Wparentheses`` warning for expressions with consecutive comparisons like ``x < y < z``.
-  Fixes #GH20456.
-
-- Clang no longer emits a "declared here" note for a builtin function that has no declaration in source.
-  Fixes #GH93369.
-
-- Clang now has an improved error message for captures that refer to a class member.
-  Fixes #GH94764.
-
-- Clang now diagnoses unsupported class declarations for ``std::initializer_list<E>`` when they are
-  used rather than when they are needed for constant evaluation or when code is generated for them.
-  The check is now stricter to prevent crashes for some unsupported declarations (Fixes #GH95495).
-
-- Clang now diagnoses dangling cases where a pointer is assigned to a temporary
-  that will be destroyed at the end of the full expression.
-  Fixes #GH54492.
-
-- Clang now shows implicit deduction guides when diagnosing overload resolution failure. #GH92393.
-
-- Clang no longer emits a "no previous prototype" warning for Win32 entry points under ``-Wmissing-prototypes``.
-  Fixes #GH94366.
-
-- For the ARM target, calling an interrupt handler from another function is now an error. #GH95359.
-
-- Clang now diagnoses integer constant expressions that are folded to a constant value as an extension in more circumstances. Fixes #GH59863
-
-- Clang now diagnoses dangling assignments for pointer-like objects (annotated with `[[gsl::Pointer]]`) under `-Wdangling-assignment-gsl` (off by default)
-  Fixes #GH63310.
-  
-- Clang now diagnoses uses of alias templates with a deprecated attribute. (Fixes #GH18236).
-
-  .. code-block:: c++
-
-     template <typename T>
-     struct NoAttr {
-     };
-
-     template <typename T>
-     using UsingWithAttr __attribute__((deprecated)) = NoAttr<T>;
-
-     UsingWithAttr<int> objUsingWA; // warning: 'UsingWithAttr' is deprecated
 
 Improvements to Clang's time-trace
 ----------------------------------
 
-- Clang now specifies that using ``auto`` in a lambda parameter is a C++14 extension when
-  appropriate. (`#46059: <https://github.com/llvm/llvm-project/issues/46059>`_).
-
-- Clang now adds source file infomation for template instantiations as ``event["args"]["filename"]``. This
-  added behind an option ``-ftime-trace-verbose``. This is expected to increase the size of trace by 2-3 times.
-
 Improvements to Coverage Mapping
 --------------------------------
 
-- Macros defined in system headers are not expanded in coverage
-  mapping. Conditional expressions in system header macros are no
-  longer taken into account for branch coverage. They can be included
-  with ``-mllvm -system-headers-coverage``.
-  (`#78920: <https://github.com/llvm/llvm-project/issues/78920>`_)
-- MC/DC Coverage has been improved.
-  (`#82448: <https://github.com/llvm/llvm-project/pull/82448>`_)
-
-  - The maximum number of conditions is no longer limited to 6. See
-    `this <SourceBasedCodeCoverage.html#mc-dc-instrumentation>` for
-    more details.
-
 Bug Fixes in This Version
 -------------------------
-- Clang's ``-Wundefined-func-template`` no longer warns on pure virtual
-  functions. (#GH74016)
-
-- Fixed missing warnings when comparing mismatched enumeration constants
-  in C (#GH29217)
-
-- Clang now accepts elaborated-type-specifiers that explicitly specialize
-  a member class template for an implicit instantiation of a class template.
-
-- Fixed missing warnings when doing bool-like conversions in C23 (#GH79435).
-- Clang's ``-Wshadow`` no longer warns when an init-capture is named the same as
-  a class field unless the lambda can capture this.
-  Fixes (#GH71976)
-
-- Clang now accepts qualified partial/explicit specializations of variable templates that
-  are not nominable in the lookup context of the specialization.
-
-- Clang now doesn't produce false-positive warning `-Wconstant-logical-operand`
-  for logical operators in C23.
-  Fixes (#GH64356).
-
-- ``__is_trivially_relocatable`` no longer returns ``false`` for volatile-qualified types.
-  Fixes (#GH77091).
-
-- Clang no longer produces a false-positive `-Wunused-variable` warning
-  for variables created through copy initialization having side-effects in C++17 and later.
-  Fixes (#GH64356) (#GH79518).
-
-- Fix value of predefined macro ``__FUNCTION__`` in MSVC compatibility mode.
-  Fixes (#GH66114).
-
-- Clang now emits errors for explicit specializations/instatiations of lambda call
-  operator.
-  Fixes (#GH83267).
-
-- Fix crash on ill-formed partial specialization with CRTP.
-  Fixes (#GH89374).
-
-- Clang now correctly generates overloads for bit-precise integer types for
-  builtin operators in C++. Fixes #GH82998.
-
-- Fix crash when destructor definition is preceded with an equals sign.
-  Fixes (#GH89544).
-
-- When performing mixed arithmetic between ``_Complex`` floating-point types and integers,
-  Clang now correctly promotes the integer to its corresponding real floating-point
-  type only rather than to the complex type (e.g. ``_Complex float / int`` is now evaluated
-  as ``_Complex float / float`` rather than ``_Complex float / _Complex float``), as mandated
-  by the C standard. This significantly improves codegen of `*` and `/` especially.
-  Fixes #GH31205.
-
-- Fixes an assertion failure on invalid code when trying to define member
-  functions in lambdas.
-
-- Fixed a regression in CTAD that a friend declaration that befriends itself may cause
-  incorrect constraint substitution. (#GH86769).
-
-- Fixed an assertion failure on invalid InitListExpr in C89 mode (#GH88008).
-
-- Fixed missing destructor calls when we branch from middle of an expression.
-  This could happen through a branch in stmt-expr or in an expression containing a coroutine
-  suspension. Fixes (#GH63818) (#GH88478).
-
-- Clang will no longer diagnose an erroneous non-dependent ``switch`` condition
-  during instantiation, and instead will only diagnose it once, during checking
-  of the function template.
-
-- Clang now allows the value of unroll count to be zero in ``#pragma GCC unroll`` and ``#pragma unroll``.
-  The values of 0 and 1 block any unrolling of the loop. This keeps the same behavior with GCC.
-  Fixes (`#88624 <https://github.com/llvm/llvm-project/issues/88624>`_).
-
-- Clang will no longer emit a duplicate -Wunused-value warning for an expression
-  `(A, B)` which evaluates to glvalue `B` that can be converted to non ODR-use. (#GH45783)
-
-- Clang now correctly disallows VLA type compound literals, e.g. ``(int[size]){}``,
-  as the C standard mandates. (#GH89835)
-
-- ``__is_array`` and ``__is_bounded_array`` no longer return ``true`` for
-  zero-sized arrays. Fixes (#GH54705).
-
-- Correctly reject declarations where a statement is required in C.
-  Fixes #GH92775
-
-- Fixed `static_cast` to array of unknown bound. Fixes (#GH62863).
-
-- Fixed Clang crashing when failing to perform some C++ Initialization Sequences. (#GH98102)
-
-- ``__is_trivially_equality_comparable`` no longer returns true for types which
-  have a constrained defaulted comparison operator (#GH89293).
-
-- Fixed Clang from generating dangling StringRefs when deserializing Exprs & Stmts (#GH98667)
-
-- ``__has_unique_object_representations`` correctly handles arrays of unknown bounds of
-  types by ensuring they are complete and instantiating them if needed. Fixes (#GH95311).
-
-- ``typeof_unqual`` now properly removes type qualifiers from arrays and their element types. (#GH92667)
-
-- Fixed an assertion failure when a template non-type parameter contains
-  an invalid expression.
 
 Bug Fixes to Compiler Builtins
 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
-- Fix crash when atomic builtins are called with pointer to zero-size struct (#GH90330)
-
-- Clang now allows pointee types of atomic builtin arguments to be complete template types
-  that was not instantiated elsewhere.
-
 Bug Fixes to Attribute Support
 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
 Bug Fixes to C++ Support
 ^^^^^^^^^^^^^^^^^^^^^^^^
 
-- Fix crash when calling the constructor of an invalid class.
-  (#GH10518) (#GH67914) (#GH78388)
-- Fix crash when using lifetimebound attribute in function with trailing return.
-  (#GH73619)
-- Addressed an issue where constraints involving injected class types are perceived
-  distinct from its specialization types. (#GH56482)
-- Fixed a bug where variables referenced by requires-clauses inside
-  nested generic lambdas were not properly injected into the constraint scope. (#GH73418)
-- Fixed a crash where substituting into a requires-expression that refers to function
-  parameters during the equivalence determination of two constraint expressions.
-  (#GH74447)
-- Fixed deducing auto& from const int in template parameters of partial
-  specializations. (#GH77189)
-- Fix for crash when using a erroneous type in a return statement.
-  (#GH63244) (#GH79745)
-- Fixed an out-of-bounds error caused by building a recovery expression for ill-formed
-  function calls while substituting into constraints. (#GH58548)
-- Fix incorrect code generation caused by the object argument
-  of ``static operator()`` and ``static operator[]`` calls not being evaluated. (#GH67976)
-- Fix crash and diagnostic with const qualified member operator new.
-  Fixes (#GH79748)
-- Fixed a crash where substituting into a requires-expression that involves parameter packs
-  during the equivalence determination of two constraint expressions. (#GH72557)
-- Fix a crash when specializing an out-of-line member function with a default
-  parameter where we did an incorrect specialization of the initialization of
-  the default parameter. (#GH68490)
-- Fix a crash when trying to call a varargs function that also has an explicit object parameter.
-  Fixes (#GH80971)
-- Reject explicit object parameters on `new` and `delete` operators. (#GH82249)
-- Fix a crash when trying to call a varargs function that also has an explicit object parameter. (#GH80971)
-- Fixed a bug where abbreviated function templates would append their invented template parameters to
-  an empty template parameter lists.
-- Fix parsing of abominable function types inside type traits. Fixes #GH77585
-- Clang now classifies aggregate initialization in C++17 and newer as constant
-  or non-constant more accurately. Previously, only a subset of the initializer
-  elements were considered, misclassifying some initializers as constant. Partially fixes
-  #GH80510.
-- Clang now ignores top-level cv-qualifiers on function parameters in template partial orderings. (#GH75404)
-- No longer reject valid use of the ``_Alignas`` specifier when declaring a
-  local variable, which is supported as a C11 extension in C++. Previously, it
-  was only accepted at namespace scope but not at local function scope.
-- Clang no longer tries to call consteval constructors at runtime when they appear in a member initializer. (#GH82154)
-- Fix crash when using an immediate-escalated function at global scope. (#GH82258)
-- Correctly immediate-escalate lambda conversion functions. (#GH82258)
-- Fixed an issue where template parameters of a nested abbreviated generic lambda within
-  a requires-clause lie at the same depth as those of the surrounding lambda. This,
-  in turn, results in the wrong template argument substitution during constraint checking.
-  (#GH78524)
-- Clang no longer instantiates the exception specification of discarded candidate function
-  templates when determining the primary template of an explicit specialization.
-- Fixed a crash in Microsoft compatibility mode where unqualified dependent base class
-  lookup searches the bases of an incomplete class.
-- Fix a crash when an unresolved overload set is encountered on the RHS of a ``.*`` operator.
-  (#GH53815)
-- In ``__restrict``-qualified member functions, attach ``__restrict`` to the pointer type of
-  ``this`` rather than the pointee type.
-  Fixes (#GH82941), (#GH42411) and (#GH18121).
-- Clang now properly reports supported C++11 attributes when using
-  ``__has_cpp_attribute`` and parses attributes with arguments in C++03 (#GH82995)
-- Clang now properly diagnoses missing 'default' template arguments on a variety
-  of templates. Previously we were diagnosing on any non-function template
-  instead of only on class, alias, and variable templates, as last updated by
-  CWG2032. Fixes (#GH83461)
-- Fixed an issue where an attribute on a declarator would cause the attribute to
-  be destructed prematurely. This fixes a pair of Chromium that were brought to
-  our attention by an attempt to fix in (#GH77703). Fixes (#GH83385).
-- Fix evaluation of some immediate calls in default arguments.
-  Fixes (#GH80630)
-- Fixed an issue where the ``RequiresExprBody`` was involved in the lambda dependency
-  calculation. (#GH56556), (#GH82849).
-- Fix a bug where overload resolution falsely reported an ambiguity when it was comparing
-  a member-function against a non member function or a member-function with an
-  explicit object parameter against a member function with no explicit object parameter
-  when one of the function had more specialized templates. Fixes #GH82509 and #GH74494
-- Clang now supports direct lambda calls inside of a type alias template declarations.
-  This addresses (#GH70601), (#GH76674), (#GH79555), (#GH81145) and (#GH82104).
-- Allow access to a public template alias declaration that refers to friend's
-  private nested type. (#GH25708).
-- Fixed a crash in constant evaluation when trying to access a
-  captured ``this`` pointer in a lambda with an explicit object parameter.
-  Fixes (#GH80997)
-- Fix an issue where missing set friend declaration in template class instantiation.
-  Fixes (#GH84368).
-- Fixed a crash while checking constraints of a trailing requires-expression of a lambda, that the
-  expression references to an entity declared outside of the lambda. (#GH64808)
-- Clang's __builtin_bit_cast will now produce a constant value for records with empty bases. See:
-  (#GH82383)
-- Fix a crash when instantiating a lambda that captures ``this`` outside of its context. Fixes (#GH85343).
-- Fix an issue where a namespace alias could be defined using a qualified name (all name components
-  following the first `::` were ignored).
-- Fix an out-of-bounds crash when checking the validity of template partial specializations. (part of #GH86757).
-- Fix an issue caused by not handling invalid cases when substituting into the parameter mapping of a constraint. Fixes (#GH86757).
-- Fixed a bug that prevented member function templates of class templates declared with a deduced return type
-  from being explicitly specialized for a given implicit instantiation of the class template.
-- Fixed a crash when ``this`` is used in a dependent class scope function template specialization
-  that instantiates to a static member function.
-- Fix crash when inheriting from a cv-qualified type. Fixes #GH35603
-- Fix a crash when the using enum declaration uses an anonymous enumeration. Fixes (#GH86790).
-- Handled an edge case in ``getFullyPackExpandedSize`` so that we now avoid a false-positive diagnostic. (#GH84220)
-- Clang now correctly tracks type dependence of by-value captures in lambdas with an explicit
-  object parameter.
-  Fixes (#GH70604), (#GH79754), (#GH84163), (#GH84425), (#GH86054), (#GH86398), and (#GH86399).
-- Fix a crash when deducing ``auto`` from an invalid dereference (#GH88329).
-- Fix a crash in requires expression with templated base class member function. Fixes (#GH84020).
-- Fix a crash caused by defined struct in a type alias template when the structure
-  has fields with dependent type. Fixes (#GH75221).
-- Fix the Itanium mangling of lambdas defined in a member of a local class (#GH88906)
-- Fixed a crash when trying to evaluate a user-defined ``static_assert`` message whose ``size()``
-  function returns a large or negative value. Fixes (#GH89407).
-- Fixed a use-after-free bug in parsing of type constraints with default arguments that involve lambdas. (#GH67235)
-- Fixed bug in which the body of a consteval lambda within a template was not parsed as within an
-  immediate function context.
-- Fix CTAD for ``std::initializer_list``. This allows ``std::initializer_list{1, 2, 3}`` to be deduced as
-  ``std::initializer_list<int>`` as intended.
-- Fix a bug on template partial specialization whose template parameter is `decltype(auto)`.
-- Fix a bug on template partial specialization with issue on deduction of nontype template parameter
-  whose type is `decltype(auto)`. Fixes (#GH68885).
-- Clang now correctly treats the noexcept-specifier of a friend function to be a complete-class context.
-- Fix an assertion failure when parsing an invalid members of an anonymous class. (#GH85447)
-- Fixed a misuse of ``UnresolvedLookupExpr`` for ill-formed templated expressions. Fixes (#GH48673), (#GH63243)
-  and (#GH88832).
-- Clang now defers all substitution into the exception specification of a function template specialization
-  until the noexcept-specifier is instantiated.
-- Fix a crash when an implicitly declared ``operator==`` function with a trailing requires-clause has its
-  constraints compared to that of another declaration.
-- Fix a bug where explicit specializations of member functions/function templates would have substitution
-  performed incorrectly when checking constraints. Fixes (#GH90349).
-- Clang now allows constrained member functions to be explicitly specialized for an implicit instantiation
-  of a class template.
-- Fix a C++23 bug in implementation of P2564R3 which evaluates immediate invocations in place
-  within initializers for variables that are usable in constant expressions or are constant
-  initialized, rather than evaluating them as a part of the larger manifestly constant evaluated
-  expression.
-- Fix a bug in access control checking due to dealyed checking of friend declaration. Fixes (#GH12361).
-- Correctly treat the compound statement of an ``if consteval`` as an immediate context. Fixes (#GH91509).
-- When partial ordering alias templates against template template parameters,
-  allow pack expansions when the alias has a fixed-size parameter list. Fixes (#GH62529).
-- Clang now ignores template parameters only used within the exception specification of candidate function
-  templates during partial ordering when deducing template arguments from a function declaration or when
-  taking the address of a function template.
-- Fix a bug with checking constrained non-type template parameters for equivalence. Fixes (#GH77377).
-- Fix a bug where the last argument was not considered when considering the most viable function for
-  explicit object argument member functions. Fixes (#GH92188).
-- Fix a C++11 crash when a non-const non-static member function is defined out-of-line with
-  the ``constexpr`` specifier. Fixes (#GH61004).
-- Clang no longer transforms dependent qualified names into implicit class member access expressions
-  until it can be determined whether the name is that of a non-static member.
-- Clang now correctly diagnoses when the current instantiation is used as an incomplete base class.
-- Clang no longer treats ``constexpr`` class scope function template specializations of non-static members
-  as implicitly ``const`` in language modes after C++11.
-- Fixed a crash when trying to emit captures in a lambda call operator with an explicit object
-  parameter that is called on a derived type of the lambda.
-  Fixes (#GH87210), (GH89541).
-- Clang no longer tries to check if an expression is immediate-escalating in an unevaluated context.
-  Fixes (#GH91308).
-- Fix a crash caused by a regression in the handling of ``source_location``
-  in dependent contexts. Fixes (#GH92680).
-- Fixed a crash when diagnosing failed conversions involving template parameter
-  packs. (#GH93076)
-- Fixed a regression introduced in Clang 18 causing a static function overloading a non-static function
-  with the same parameters not to be diagnosed. (Fixes #GH93456).
-- Clang now diagnoses unexpanded parameter packs in attributes. (Fixes #GH93269).
-- Clang now allows ``@$``` in raw string literals. Fixes (#GH93130).
-- Fix an assertion failure when checking invalid ``this`` usage in the wrong context. (Fixes #GH91536).
-- Clang no longer models dependent NTTP arguments as ``TemplateParamObjectDecl`` s. Fixes (#GH84052).
-- Fix incorrect merging of modules which contain using declarations which shadow
-  other declarations. This could manifest as ODR checker false positives.
-  Fixes (`#80252 <https://github.com/llvm/llvm-project/issues/80252>`_)
-- Fix a regression introduced in Clang 18 causing incorrect overload resolution in the presence of functions only
-  differering by their constraints when only one of these function was variadic.
-- Fix a crash when a variable is captured by a block nested inside a lambda. (Fixes #GH93625).
-- Fixed a type constraint substitution issue involving a generic lambda expression. (#GH93821)
-- Fix a crash caused by improper use of ``__array_extent``. (#GH80474)
-- Fixed several bugs in capturing variables within unevaluated contexts. (#GH63845), (#GH67260), (#GH69307),
-  (#GH88081), (#GH89496), (#GH90669), (#GH91633) and (#GH97453).
-- Fixed a crash in constraint instantiation under nested lambdas with dependent parameters.
-- Fixed handling of brace ellison when building deduction guides. (#GH64625), (#GH83368).
-- Fixed a failed assertion when attempting to convert an integer representing the difference
-  between the addresses of two labels (a GNU extension) to a pointer within a constant expression. (#GH95366).
-- Fix immediate escalation bugs in the presence of dependent call arguments. (#GH94935)
-- Clang now diagnoses explicit specializations with storage class specifiers in all contexts.
-- Fix an assertion failure caused by parsing a lambda used as a default argument for the value of a
-  forward-declared class. (#GH93512).
-- Fixed a bug in access checking inside return-type-requirement of compound requirements. (#GH93788).
-- Fixed an assertion failure about invalid conversion when calling lambda. (#GH96205).
-- Fixed a bug where the first operand of binary ``operator&`` would be transformed as if it was the operand
-  of the address of operator. (#GH97483).
-- Fixed an assertion failure about a constant expression which is a known integer but is not
-  evaluated to an integer. (#GH96670).
-- Fixed a bug where references to lambda capture inside a ``noexcept`` specifier were not correctly
-  instantiated. (#GH95735).
-- Fixed a CTAD substitution bug involving type aliases that reference outer template parameters. (#GH94614).
-- Clang now correctly handles unexpanded packs in the template parameter list of a generic lambda expression
-  (#GH48937)
-- Fix a crash when parsing an invalid type-requirement in a requires expression. (#GH51868)
-- Fix parsing of built-in type-traits such as ``__is_pointer`` in libstdc++ headers. (#GH95598)
-- Fixed failed assertion when resolving context of defaulted comparison method outside of struct. (#GH96043).
-- Clang now diagnoses explicit object parameters in member pointers and other contexts where they should not appear.
-  Fixes (#GH85992).
-- Fixed a crash-on-invalid bug involving extraneous template parameter with concept substitution. (#GH73885)
-- Fixed assertion failure by skipping the analysis of an invalid field declaration. (#GH99868)
-
 Bug Fixes to AST Handling
 ^^^^^^^^^^^^^^^^^^^^^^^^^
-- Clang now properly preserves ``FoundDecls`` within a ``ConceptReference``. (#GH82628)
-- The presence of the ``typename`` keyword is now stored in ``TemplateTemplateParmDecl``.
-- Fixed malformed AST generated for anonymous union access in templates. (#GH90842)
-- Improved preservation of qualifiers and sugar in `TemplateNames`, including
-  template keyword.
 
 Miscellaneous Bug Fixes
 ^^^^^^^^^^^^^^^^^^^^^^^
 
-- Fixed an infinite recursion in ASTImporter, on return type declared inside
-  body of C++11 lambda without trailing return (#GH68775).
-- Fixed declaration name source location of instantiated function definitions (GH71161).
-- Improve diagnostic output to print an expression instead of 'no argument` when comparing Values as template arguments.
-
 Miscellaneous Clang Crashes Fixed
 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
 
-- Do not attempt to dump the layout of dependent types or invalid declarations
-  when ``-fdump-record-layouts-complete`` is passed. Fixes #GH83684.
-- Unhandled StructuralValues in the template differ (#GH93068).
-
 OpenACC Specific Changes
 ------------------------
 
@@ -1142,144 +149,36 @@
 X86 Support
 ^^^^^^^^^^^
 
-- Remove knl/knm specific ISA supports: AVX512PF, AVX512ER, PREFETCHWT1
-- Support has been removed for the AMD "3DNow!" instruction-set.
-  Neither modern AMD CPUs, nor any Intel CPUs implement these
-  instructions, and they were never widely used.
-
-  * The options ``-m3dnow`` and ``-m3dnowa`` are no longer honored, and will emit a warning if used.
-  * The macros ``__3dNOW__`` and ``__3dNOW_A__`` are no longer ever set by the compiler.
-  * The header ``<mm3dnow.h>`` is deprecated, and emits a warning if included.
-  * The 3dNow intrinsic functions have been removed: ``_m_femms``,
-    ``_m_pavgusb``, ``_m_pf2id``, ``_m_pfacc``, ``_m_pfadd``,
-    ``_m_pfcmpeq``, ``_m_pfcmpge``, ``_m_pfcmpgt``, ``_m_pfmax``,
-    ``_m_pfmin``, ``_m_pfmul``, ``_m_pfrcp``, ``_m_pfrcpit1``,
-    ``_m_pfrcpit2``, ``_m_pfrsqrt``, ``_m_pfrsqrtit1``, ``_m_pfsub``,
-    ``_m_pfsubr``, ``_m_pi2fd``, ``_m_pmulhrw``, ``_m_pf2iw``,
-    ``_m_pfnacc``, ``_m_pfpnacc``, ``_m_pi2fw``, ``_m_pswapdsf``,
-    ``_m_pswapdsi``.
-  * The compiler builtins corresponding to each of the above
-    intrinsics have also been removed  (``__builtin_ia32_femms``, and so on).
-  * "3DNow!" instructions remain supported in assembly code, including
-    inside inline-assembly.
-
 Arm and AArch64 Support
 ^^^^^^^^^^^^^^^^^^^^^^^
 
-- ARMv7+ targets now default to allowing unaligned access, except Armv6-M, and
-  Armv8-M without the Main Extension. Baremetal targets should check that the
-  new default will work with their system configurations, since it requires
-  that SCTLR.A is 0, SCTLR.U is 1, and that the memory in question is
-  configured as "normal" memory. This brings Clang in-line with the default
-  settings for GCC and Arm Compiler. Aside from making Clang align with other
-  compilers, changing the default brings major performance and code size
-  improvements for most targets. We have not changed the default behavior for
-  ARMv6, but may revisit that decision in the future. Users can restore the old
-  behavior with -m[no-]unaligned-access.
-- An alias identifier (rdma) has been added for targeting the AArch64
-  Architecture Extension which uses Rounding Doubling Multiply Accumulate
-  instructions (rdm). The identifier is available on the command line as
-  a feature modifier for -march and -mcpu as well as via target attributes
-  like ``target_version`` or ``target_clones``.
-- Support has been added for the following processors (-mcpu identifiers in parenthesis):
-    * Arm Cortex-R52+ (cortex-r52plus).
-    * Arm Cortex-R82AE (cortex-r82ae).
-    * Arm Cortex-A78AE (cortex-a78ae).
-    * Arm Cortex-A520AE (cortex-a520ae).
-    * Arm Cortex-A720AE (cortex-a720ae).
-    * Arm Cortex-A725 (cortex-a725).
-    * Arm Cortex-X925 (cortex-x925).
-    * Arm Neoverse-N3 (neoverse-n3).
-    * Arm Neoverse-V3 (neoverse-v3).
-    * Arm Neoverse-V3AE (neoverse-v3ae).
-
 Android Support
 ^^^^^^^^^^^^^^^
 
 Windows Support
 ^^^^^^^^^^^^^^^
 
-- The clang-cl ``/Ot`` compiler option ("optimize for speed", also implied by
-  ``/O2``) now maps to clang's ``-O3`` optimizataztion level instead of ``-O2``.
-  Users who prefer the old behavior can use ``clang-cl /Ot /clang:-O2 ...``.
-
-- Clang-cl now supports function targets with intrinsic headers. This allows
-  for runtime feature detection of intrinsics. Previously under clang-cl
-  ``immintrin.h`` and similar intrinsic headers would only include the intrinsics
-  if building with that feature enabled at compile time, e.g. ``avxintrin.h``
-  would only be included if AVX was enabled at compile time. This was done to work
-  around include times from MSVC STL including ``intrin.h`` under clang-cl.
-  Clang-cl now provides ``intrin0.h`` for MSVC STL and therefore all intrinsic
-  features without requiring enablement at compile time. Fixes #GH53520
-
-- Improved compile times with MSVC STL. MSVC provides ``intrin0.h`` which is a
-  header that only includes intrinsics that are used by MSVC STL to avoid the
-  use of ``intrin.h``. MSVC STL when compiled under clang uses ``intrin.h``
-  instead. Clang-cl now provides ``intrin0.h`` for the same compiler throughput
-  purposes as MSVC. Clang-cl also provides ``yvals_core.h`` to redefine
-  ``_STL_INTRIN_HEADER`` to expand to ``intrin0.h`` instead of ``intrin.h``.
-  This also means that if all intrinsic features are enabled at compile time
-  including STL headers will no longer slow down compile times since ``intrin.h``
-  is not included from MSVC STL.
-
-- When the target triple is `*-windows-msvc` strict aliasing is now disabled by default
-  to ensure compatibility with msvc. Previously strict aliasing was only disabled if the
-  driver mode was cl.
-
 LoongArch Support
 ^^^^^^^^^^^^^^^^^
 
-- ``-march=la64v1.0`` and ``-march=la64v1.1`` have been added to select the
-  ``la64v1.0`` and ``la64v1.1`` architecture respectively. And ``-march=la664``
-  is added to support the ``la664`` micro-architecture.
-- The 128-bits SIMD extension (``LSX``) is enabled by default.
-- ``-msimd=`` has beend added to select the SIMD extension(s) to be enabled.
-- Predefined macros ``__loongarch_simd_width`` and ``__loongarch_frecipe`` are
-  added.
-
 RISC-V Support
 ^^^^^^^^^^^^^^
 
-- ``__attribute__((rvv_vector_bits(N)))`` is now supported for RVV vbool*_t types.
-- Profile names in ``-march`` option are now supported.
-- Passing empty structs/unions as arguments in C++ is now handled correctly. The behavior is similar to GCC's.
-- ``-m[no-]scalar-strict-align`` and ``-m[no-]vector-strict-align`` options have
-  been added to give separate control of whether scalar or vector misaligned
-  accesses may be created. ``-m[no-]strict-align`` applies to both scalar and
-  vector.
-
 CUDA/HIP Language Changes
 ^^^^^^^^^^^^^^^^^^^^^^^^^
 
-- PTX is no longer included by default when compiling for CUDA. Using
-  ``--cuda-include-ptx=all`` will return the old behavior.
-
 CUDA Support
 ^^^^^^^^^^^^
-- Clang now supports CUDA SDK up to 12.5
 
 AIX Support
 ^^^^^^^^^^^
 
-- Introduced the ``-maix-small-local-dynamic-tls`` option to produce a faster
-  access sequence for local-dynamic TLS variables where the offset from the TLS
-  base is encoded as an immediate operand.
-  This access sequence is not used for TLS variables larger than 32KB, and is
-  currently only supported on 64-bit mode.
-
 NetBSD Support
 ^^^^^^^^^^^^^^
 
-- Removed support for building NetBSD/i386 6.x or older binaries.
-
 WebAssembly Support
 ^^^^^^^^^^^^^^^^^^^
 
-The -mcpu=generic configuration now enables multivalue and reference-types.
-These proposals are standardized and available in all major engines. Enabling
-multivalue here only enables the language feature but does not turn on the
-multivalue ABI (this enables non-ABI uses of multivalue, like exnref).
-
 AVR Support
 ^^^^^^^^^^^
 
@@ -1289,138 +188,44 @@
 Floating Point Support in Clang
 -------------------------------
 
-- Add ``__builtin__fmaf16`` builtin for floating point types.
-
 Fixed Point Support in Clang
 ----------------------------
 
-- Support fixed point precision macros according to ``7.18a.3`` of
-  `ISO/IEC TR 18037:2008 <https://standards.iso.org/ittf/PubliclyAvailableStandards/c051126_ISO_IEC_TR_18037_2008.zip>`_.
-
 AST Matchers
 ------------
 
-- Fixes a long-standing performance issue in parent map generation for
-  ancestry-based matchers such as ``hasParent`` and ``hasAncestor``, making
-  them significantly faster.
-- ``isInStdNamespace`` now supports Decl declared with ``extern "C++"``.
-- Add ``isExplicitObjectMemberFunction``.
-- Fixed ``forEachArgumentWithParam`` and ``forEachArgumentWithParamType`` to
-  not skip the explicit object parameter for operator calls.
-- Fixed captureVars assertion failure if not capturesVariables. (#GH76425)
-- ``forCallable`` now properly preserves binding on successful match. (#GH89657)
-
 clang-format
 ------------
 
-- ``AlwaysBreakTemplateDeclarations`` is deprecated and renamed to
-  ``BreakTemplateDeclarations``.
-- ``AlwaysBreakAfterReturnType`` is deprecated and renamed to
-  ``BreakAfterReturnType``.
-- Handles Java switch expressions.
-- Adds ``AllowShortCaseExpressionOnASingleLine`` option.
-- Adds ``AlignCaseArrows`` suboption to ``AlignConsecutiveShortCaseStatements``.
-- Adds ``LeftWithLastLine`` suboption to ``AlignEscapedNewlines``.
-- Adds ``KeepEmptyLines`` option to deprecate ``KeepEmptyLinesAtEOF``
-  and ``KeepEmptyLinesAtTheStartOfBlocks``.
-- Add ``ExceptDoubleParentheses`` sub-option for ``SpacesInParensOptions``
-  to override addition of spaces between multiple, non-redundant parentheses
-  similar to the rules used for ``RemoveParentheses``.
-
 libclang
 --------
 
-- ``clang_getSpellingLocation`` now correctly resolves macro expansions; that
-  is, it returns the spelling location instead of the expansion location.
-
 Static Analyzer
 ---------------
 
 New features
 ^^^^^^^^^^^^
 
-- The attribute ``[[clang::suppress]]`` can now be applied to declarations.
-  (#GH80371)
-
-- Support C++23 static operator calls. (#GH84972)
-
 Crash and bug fixes
 ^^^^^^^^^^^^^^^^^^^
 
-- Fixed crashing on loops if the loop variable was declared in switch blocks
-  but not under any case blocks if ``unroll-loops=true`` analyzer config is
-  set. (#GH68819)
-
-- Fixed a crash in ``security.cert.env.InvalidPtr`` checker when accidentally
-  matched user-defined ``strerror`` and similar library functions. (#GH88181)
-
-- Fixed a crash when storing through an address that refers to the address of
-  a label. (#GH89185)
-
-- Z3 crosschecking (aka. Z3 refutation) is now bounded, and can't consume
-  more total time than the eymbolic execution itself. (#GH97298)
-
-- ``std::addressof``, ``std::as_const``, ``std::forward``,
-  ``std::forward_like``, ``std::move``, ``std::move_if_noexcept``, are now
-  modeled just like their builtin counterpart. (#GH94193)
-
 Improvements
 ^^^^^^^^^^^^
 
 Moved checkers
 ^^^^^^^^^^^^^^
 
-- Moved ``alpha.cplusplus.ArrayDelete`` out of the ``alpha`` package
-  to ``cplusplus.ArrayDelete``. (#GH83985)
-  `Documentation <https://clang.llvm.org/docs/analyzer/checkers.html#cplusplus-arraydelete-c>`__.
-
-- Moved ``alpha.unix.Stream`` out of the ``alpha`` package to
-  ``unix.Stream``. (#GH89247)
-  `Documentation <https://clang.llvm.org/docs/analyzer/checkers.html#unix-stream-c>`__.
-
-- Moved ``alpha.unix.BlockInCriticalSection`` out of the ``alpha`` package to
-  ``unix.BlockInCriticalSection``. (#GH93815)
-  `Documentation <https://clang.llvm.org/docs/analyzer/checkers.html#unix-blockincriticalsection-c-c>`__.
-
-- Moved ``alpha.security.cert.pos.34c`` out of the ``alpha`` package to
-  ``security.PutenvStackArray``. (#GH92424, #GH93815)
-  `Documentation <https://clang.llvm.org/docs/analyzer/checkers.html#security-putenvstackarray-c>`__.
-
-- Moved ``alpha.core.SizeofPtr`` into ``clang-tidy``
-  ``bugprone-sizeof-expression``. (#GH95118, #GH94356)
-  `Documentation <https://clang.llvm.org/extra/clang-tidy/checks/bugprone/sizeof-expression.html>`__.
-
 .. _release-notes-sanitizers:
 
 Sanitizers
 ----------
 
-- ``-fsanitize=signed-integer-overflow`` now instruments signed arithmetic even
-  when ``-fwrapv`` is enabled. Previously, only division checks were enabled.
-
-  Users with ``-fwrapv`` as well as a sanitizer group like
-  ``-fsanitize=undefined`` or ``-fsanitize=integer`` enabled may want to
-  manually disable potentially noisy signed integer overflow checks with
-  ``-fno-sanitize=signed-integer-overflow``
-
-- ``-fsanitize=cfi -fsanitize-cfi-cross-dso`` (cross-DSO CFI instrumentation)
-  now generates the ``__cfi_check`` function with proper target-specific
-  attributes, for example allowing unwind table generation.
-
 Python Binding Changes
 ----------------------
 
-- Exposed `CXRewriter` API as `class Rewriter`.
-- Add some missing kinds from Index.h (CursorKind: 149-156, 272-320, 420-437.
-  TemplateArgumentKind: 5-9. TypeKind: 161-175 and 178).
-- Add support for retrieving binary operator information through
-  Cursor.binary_operator().
-
 OpenMP Support
 --------------
 
-- Added support for the `[[omp::assume]]` attribute.
-
 Additional Information
 ======================
 
diff --git a/libcxx/docs/ReleaseNotes.rst b/libcxx/docs/ReleaseNotes.rst
index 5d98ade..0454cfa 100644
--- a/libcxx/docs/ReleaseNotes.rst
+++ b/libcxx/docs/ReleaseNotes.rst
@@ -1,4 +1,4 @@
-.. include:: ReleaseNotes/19.rst
+.. include:: ReleaseNotes/20.rst
 
 .. Make sure to reference the non-live release notes in a toctree to avoid Sphinx errors.
 .. toctree::
diff --git a/lld/docs/ReleaseNotes.rst b/lld/docs/ReleaseNotes.rst
index 09081e4..6f60efd 100644
--- a/lld/docs/ReleaseNotes.rst
+++ b/lld/docs/ReleaseNotes.rst
@@ -26,70 +26,6 @@
 ELF Improvements
 ----------------
 
-* ``EI_OSABI`` in the output is now inferred from input object files.
-  (`#97144 <https://github.com/llvm/llvm-project/pull/97144>`_)
-* ``--compress-sections <section-glib>={none,zlib,zstd}[:level]`` is added to compress
-  matched output sections without the ``SHF_ALLOC`` flag.
-  (`#84855 <https://github.com/llvm/llvm-project/pull/84855>`_)
-  (`#90567 <https://github.com/llvm/llvm-project/pull/90567>`_)
-* The default compression level for zlib is now independent of linker
-  optimization level (``Z_BEST_SPEED``).
-* zstd compression parallelism no longer requires ``ZSTD_MULITHREAD`` build.
-* ``GNU_PROPERTY_AARCH64_FEATURE_PAUTH`` notes, ``R_AARCH64_AUTH_ABS64`` and
-  ``R_AARCH64_AUTH_RELATIVE`` relocations are now supported.
-  (`#72714 <https://github.com/llvm/llvm-project/pull/72714>`_)
-* ``--no-allow-shlib-undefined`` now rejects non-exported definitions in the
-  ``def-hidden.so ref.so`` case.
-  (`#86777 <https://github.com/llvm/llvm-project/issues/86777>`_)
-* ``--debug-names`` is added to create a merged ``.debug_names`` index
-  from input ``.debug_names`` sections. Type units are not handled yet.
-  (`#86508 <https://github.com/llvm/llvm-project/pull/86508>`_)
-* ``--enable-non-contiguous-regions`` option allows automatically packing input
-  sections into memory regions by automatically spilling to later matches if a
-  region would overflow. This reduces the toil of manually packing regions
-  (typical for embedded). It also makes full LTO feasible in such cases, since
-  IR merging currently prevents the linker script from referring to input
-  files. (`#90007 <https://github.com/llvm/llvm-project/pull/90007>`_)
-* ``--default-script`/``-dT`` is implemented to specify a default script that is processed
-  if ``--script``/``-T`` is not specified.
-  (`#89327 <https://github.com/llvm/llvm-project/pull/89327>`_)
-* ``--force-group-allocation`` is implemented to discard ``SHT_GROUP`` sections
-  and combine relocation sections if their relocated section group members are
-  placed to the same output section.
-  (`#94704 <https://github.com/llvm/llvm-project/pull/94704>`_)
-* ``--build-id`` now defaults to generating a 20-byte digest ("sha1") instead
-  of 8-byte ("fast"). This improves compatibility with RPM packaging tools.
-  (`#93943 <https://github.com/llvm/llvm-project/pull/93943>`_)
-* ``-z lrodata-after-bss`` is implemented to place ``.lrodata`` after ``.bss``.
-  (`#81224 <https://github.com/llvm/llvm-project/pull/81224>`_)
-* ``--export-dynamic`` no longer creates dynamic sections for ``-no-pie`` static linking.
-* ``--lto-emit-asm`` is now added as the canonical spelling of ``--plugin-opt=emit-llvm``.
-* ``--lto-emit-llvm`` now uses the pre-codegen module.
-  (`#97480 <https://github.com/llvm/llvm-project/pull/97480>`_)
-* When AArch64 PAuth is enabled, ``-z pack-relative-relocs`` now encodes ``R_AARCH64_AUTH_RELATIVE`` relocations in ``.rela.auth.dyn``.
-  (`#96496 <https://github.com/llvm/llvm-project/pull/96496>`_)
-* ``-z gcs`` and ``-z gcs-report`` are now supported for AArch64 Guarded Control Stack extension.
-* ``-r`` now forces ``-Bstatic``.
-* Thumb2 PLT is now supported for Cortex-M processors.
-  (`#93644 <https://github.com/llvm/llvm-project/pull/93644>`_)
-* ``DW_EH_sdata4`` of addresses larger than 0x80000000 is now supported for MIPS32.
-  (`#92438 <https://github.com/llvm/llvm-project/pull/92438>`_)
-* Certain unknown section types are rejected.
-  (`#85173 <https://github.com/llvm/llvm-project/pull/85173>`_)
-* ``PROVIDE(lhs = rhs) PROVIDE(rhs = ...)``, ``lhs`` is now defined only if ``rhs`` is needed.
-  (`#74771 <https://github.com/llvm/llvm-project/issues/74771>`_)
-  (`#87530 <https://github.com/llvm/llvm-project/pull/87530>`_)
-* ``OUTPUT_FORMAT(binary)`` is now supported.
-  (`#98837 <https://github.com/llvm/llvm-project/pull/98837>`_)
-* ``NOCROSSREFS`` and ``NOCRFOSSREFS_TO`` commands now supported to prohibit
-  cross references between certain output sections.
-  (`#98773 <https://github.com/llvm/llvm-project/pull/98773>`_)
-* Orphan placement is refined to prefer the last similar section when its rank <= orphan's rank.
-  (`#94099 <https://github.com/llvm/llvm-project/pull/94099>`_)
-  Non-alloc orphan sections are now placed at the end.
-  (`#94519 <https://github.com/llvm/llvm-project/pull/94519>`_)
-* R_X86_64_REX_GOTPCRELX of the addq form is no longer incorrectly optimized when the address is larger than 0x80000000.
-
 Breaking changes
 ----------------
 
@@ -102,11 +38,6 @@
 MachO Improvements
 ------------------
 
-* Chained fixups are now enabled by default when targeting macOS 13.0,
-  iOS 13.4, tvOS 14.0, watchOS 7.0, and visionOS 1.0 or later.
-  They can be disabled with the `-no_fixup_chains` flag.
-  (`#99255 <https://github.com/llvm/llvm-project/pull/99255>`_)
-
 WebAssembly Improvements
 ------------------------
 
diff --git a/llvm/docs/ReleaseNotes.rst b/llvm/docs/ReleaseNotes.rst
index a81caa1..46fa2a7 100644
--- a/llvm/docs/ReleaseNotes.rst
+++ b/llvm/docs/ReleaseNotes.rst
@@ -47,110 +47,30 @@
 Update on required toolchains to build LLVM
 -------------------------------------------
 
-* The minimum Python version has been raised from 3.6 to 3.8 across all of LLVM.
-  This enables the use of many new Python features, aligning more closely with
-  modern Python best practices, and improves CI maintainability
-  See `#78828 <https://github.com/llvm/llvm-project/pull/78828>`_ for more info.
-
 Changes to the LLVM IR
 ----------------------
 
-* Added Memory Model Relaxation Annotations (MMRAs).
-* Added ``nusw`` and ``nuw`` flags to ``getelementptr`` instruction.
-* Renamed ``llvm.experimental.vector.reverse`` intrinsic to ``llvm.vector.reverse``.
-* Renamed ``llvm.experimental.vector.splice`` intrinsic to ``llvm.vector.splice``.
-* Renamed ``llvm.experimental.vector.interleave2`` intrinsic to ``llvm.vector.interleave2``.
-* Renamed ``llvm.experimental.vector.deinterleave2`` intrinsic to ``llvm.vector.deinterleave2``.
-* The constant expression variants of the following instructions have been
-  removed:
-
-  * ``icmp``
-  * ``fcmp``
-  * ``shl``
-* LLVM has switched from using debug intrinsics in textual IR to using debug
-  records by default. Details of the change and instructions on how to update
-  any downstream tools and tests can be found in the `migration docs
-  <https://llvm.org/docs/RemoveDIsDebugInfo.html>`_.
-* Semantics of MC/DC intrinsics have been changed.
-
-  * ``llvm.instprof.mcdc.parameters``: 3rd argument has been changed
-    from bytes to bits.
-  * ``llvm.instprof.mcdc.condbitmap.update``: Removed.
-  * ``llvm.instprof.mcdc.tvbitmap.update``: 3rd argument has been
-    removed. The next argument has been changed from byte index to bit
-    index.
-* Added ``llvm.experimental.vector.compress`` intrinsic.
-
 Changes to LLVM infrastructure
 ------------------------------
 
 Changes to building LLVM
 ------------------------
 
-* LLVM now has rpmalloc version 1.4.5 in-tree, as a replacement C allocator for
-  hosted toolchains. This supports several host platforms such as Mac or Unix,
-  however currently only the Windows 64-bit LLVM release uses it.
-  This has a great benefit in terms of build times on Windows when using ThinLTO
-  linking, especially on machines with lots of cores, to an order of magnitude
-  or more. Clang compilation is also improved. Please see some build timings in
-  (`#91862 <https://github.com/llvm/llvm-project/pull/91862#issue-2291033962>`_)
-  For more information, refer to the **LLVM_ENABLE_RPMALLOC** option in `CMake variables <https://llvm.org/docs/CMake.html#llvm-related-variables>`_.
-
-* The ``LLVM_ENABLE_TERMINFO`` flag has been removed. LLVM no longer depends on
-  terminfo and now always uses the ``TERM`` environment variable for color
-  support autodetection.
-
 Changes to TableGen
 -------------------
 
-- We can define type aliases via new keyword ``deftype``.
-
 Changes to Interprocedural Optimizations
 ----------------------------------------
 
 Changes to the AArch64 Backend
 ------------------------------
 
-* Added support for Cortex-R82AE, Cortex-A78AE, Cortex-A520AE, Cortex-A720AE,
-  Cortex-A725, Cortex-X925, Neoverse-N3, Neoverse-V3 and Neoverse-V3AE CPUs.
-
-* ``-mbranch-protection=standard`` now enables FEAT_PAuth_LR by
-  default when the feature is enabled. The new behaviour results 
-  in ``standard`` being equal to ``bti+pac-ret+pc`` when ``+pauth-lr``
-  is passed as part of ``-mcpu=`` options.
-
-* SVE and SVE2 have been moved to the default extensions list for ARMv9.0,
-  making them optional per the Arm ARM.  Existing v9.0+ CPUs in the backend that
-  support these extensions continue to have these features enabled by default
-  when specified via ``-march=`` or an ``-mcpu=`` that supports them.  The
-  attribute ``"target-features"="+v9a"`` no longer implies ``"+sve"`` and
-  ``"+sve2"`` respectively.
-
 Changes to the AMDGPU Backend
 -----------------------------
 
-* Implemented the ``llvm.get.fpenv`` and ``llvm.set.fpenv`` intrinsics.
-* Added ``!amdgpu.no.fine.grained.memory`` and
-  ``!amdgpu.no.remote.memory`` metadata to control atomic behavior.
-
-* Implemented :ref:`llvm.get.rounding <int_get_rounding>` and :ref:`llvm.set.rounding <int_set_rounding>`
-
-* Removed ``llvm.amdgcn.ds.fadd``, ``llvm.amdgcn.ds.fmin`` and
-  ``llvm.amdgcn.ds.fmax`` intrinsics. Users should use the
-  :ref:`atomicrmw <i_atomicrmw>` instruction with `fadd`, `fmin` and
-  `fmax` with addrspace(3) instead.
-
-* AMDGPUAttributor is no longer run as part of the codegen pass
-  pipeline. It is expected to run as part of the middle end
-  optimizations.
-
 Changes to the ARM Backend
 --------------------------
 
-* Added support for Cortex-R52+ CPU.
-* FEAT_F32MM is no longer activated by default when using `+sve` on v8.6-A or greater. The feature is still available and can be used by adding `+f32mm` to the command line options.
-* armv8-r now implies only fp-armv8d16sp, rather than neon and full fp-armv8. These features are still included by default for cortex-r52. The default cpu for armv8-r is now "generic", for compatibility with variants that do not include neon, fp64, and d32.
-
 Changes to the AVR Backend
 --------------------------
 
@@ -163,17 +83,6 @@
 Changes to the LoongArch Backend
 --------------------------------
 
-* i32 is now a native type in the datalayout string. This enables
-  LoopStrengthReduce for loops with i32 induction variables, among other
-  optimizations.
-* Codegen support is added for TLS Desciptor.
-* Interleaved vectorization and vector shuffle are supported on LoongArch and
-  the experimental feature ``auto-vec`` is removed.
-* Allow ``f16`` codegen with expansion to libcalls.
-* Clarify that emulated TLS is not supported.
-* A codegen issue for ``bstrins.w`` is fixed on loongarch32.
-* Assorted codegen improvements.
-
 Changes to the MIPS Backend
 ---------------------------
 
@@ -183,36 +92,6 @@
 Changes to the RISC-V Backend
 -----------------------------
 
-* Added full support for the experimental Zabha (Byte and
-  Halfword Atomic Memory Operations) extension.
-* Added assembler/disassembler support for the experimenatl Zalasr
-  (Load-Acquire and Store-Release) extension.
-* The names of the majority of the S-prefixed (supervisor-level) extension
-  names in the RISC-V profiles specification are now recognised.
-* Codegen support was added for the Zimop (May-Be-Operations) extension.
-* The experimental Ssnpm, Smnpm, Smmpm, Sspm, and Supm 1.0.0 Pointer Masking extensions are supported.
-* The experimental Ssqosid extension is supported.
-* Added the CSR names from the Resumable Non-Maskable Interrupts (Smrnmi) extension.
-* llvm-objdump now prints disassembled opcode bytes in groups of 2 or 4 bytes to
-  match GNU objdump. The bytes within the groups are in big endian order.
-* Added smstateen extension to -march. CSR names for smstateen were already supported.
-* Zaamo and Zalrsc are no longer experimental.
-* Processors that enable post reg-alloc scheduling (PostMachineScheduler) by default should use the `UsePostRAScheduler` subtarget feature. Setting `PostRAScheduler = 1` in the scheduler model will have no effect on the enabling of the PostMachineScheduler.
-* Zabha is no longer experimental.
-* B (the collection of the Zba, Zbb, Zbs extensions) is supported.
-* Added smcdeleg, ssccfg, smcsrind, and sscsrind extensions to -march.
-* ``-mcpu=syntacore-scr3-rv32`` and ``-mcpu=syntacore-scr3-rv64`` were added.
-* The default atomics mapping was changed to emit an additional trailing fence
-  for sequentially consistent stores, offering compatibility with a future
-  mapping using load-acquire and store-release instructions while remaining
-  fully compatible with objects produced prior to this change. The mapping
-  (ABI) used is recorded as an ELF attribute.
-* Ztso is no longer experimental.
-* The WCH / Nanjing Qinheng Microelectronics QingKe "XW" compressed opcodes are
-  supported under the name "Xwchc".
-* ``-mcpu=native`` now detects available features with hwprobe (RISC-V Hardware Probing Interface) on Linux 6.4 or later.
-* The version of Zicfilp/Zicfiss is updated to 1.0.
-
 Changes to the WebAssembly Backend
 ----------------------------------
 
@@ -222,12 +101,6 @@
 Changes to the X86 Backend
 --------------------------
 
-- Removed knl/knm specific ISA intrinsics: AVX512PF, AVX512ER, PREFETCHWT1,
-  while assembly encoding/decoding supports are kept.
-
-- Removed ``3DNow!``-specific ISA intrinsics and codegen support. The ``3dnow`` and ``3dnowa`` target features are no longer supported. The intrinsics ``llvm.x86.3dnow.*``, ``llvm.x86.3dnowa.*``, and ``llvm.x86.mmx.femms`` have been removed. Assembly encoding/decoding for the corresponding instructions remains supported.
-
-
 Changes to the OCaml bindings
 -----------------------------
 
@@ -237,104 +110,6 @@
 Changes to the C API
 --------------------
 
-* Added ``LLVMGetBlockAddressFunction`` and ``LLVMGetBlockAddressBasicBlock``
-  functions for accessing the values in a blockaddress constant.
-
-* Added ``LLVMConstStringInContext2`` function, which better matches the C++
-  API by using ``size_t`` for string length. Deprecated ``LLVMConstStringInContext``.
-
-* Added the following functions for accessing a function's prefix data:
-
-  * ``LLVMHasPrefixData``
-  * ``LLVMGetPrefixData``
-  * ``LLVMSetPrefixData``
-
-* Added the following functions for accessing a function's prologue data:
-
-  * ``LLVMHasPrologueData``
-  * ``LLVMGetPrologueData``
-  * ``LLVMSetPrologueData``
-
-* Deprecated ``LLVMConstNUWNeg`` and ``LLVMBuildNUWNeg``.
-
-* Added ``LLVMAtomicRMWBinOpUIncWrap`` and ``LLVMAtomicRMWBinOpUDecWrap`` to
-  ``LLVMAtomicRMWBinOp`` enum for AtomicRMW instructions.
-
-* Added ``LLVMCreateConstantRangeAttribute`` function for creating ConstantRange Attributes.
-
-* Added the following functions for creating and accessing data for CallBr instructions:
-
-  * ``LLVMBuildCallBr``
-  * ``LLVMGetCallBrDefaultDest``
-  * ``LLVMGetCallBrNumIndirectDests``
-  * ``LLVMGetCallBrIndirectDest``
-
-* The following functions for creating constant expressions have been removed,
-  because the underlying constant expressions are no longer supported. Instead,
-  an instruction should be created using the ``LLVMBuildXYZ`` APIs, which will
-  constant fold the operands if possible and create an instruction otherwise:
-
-  * ``LLVMConstICmp``
-  * ``LLVMConstFCmp``
-  * ``LLVMConstShl``
-
-**Note:** The following changes are due to the removal of the debug info
-intrinsics from LLVM and to the introduction of debug records into LLVM.
-They are described in detail in the `debug info migration guide <https://llvm.org/docs/RemoveDIsDebugInfo.html>`_.
-
-* Added the following functions to insert before the indicated instruction but
-  after any attached debug records.
-
-  * ``LLVMPositionBuilderBeforeDbgRecords``
-  * ``LLVMPositionBuilderBeforeInstrAndDbgRecords``
-
-  Same as ``LLVMPositionBuilder`` and ``LLVMPositionBuilderBefore`` except the
-  insertion position is set to before the debug records that precede the target
-  instruction. ``LLVMPositionBuilder`` and ``LLVMPositionBuilderBefore`` are
-  unchanged.
-
-* Added the following functions to get/set the new non-instruction debug info format.
-  They will be deprecated in the future and they are just a transition aid.
-
-  * ``LLVMIsNewDbgInfoFormat``
-  * ``LLVMSetIsNewDbgInfoFormat``
-
-* Added the following functions to insert a debug record (new debug info format).
-
-  * ``LLVMDIBuilderInsertDeclareRecordBefore``
-  * ``LLVMDIBuilderInsertDeclareRecordAtEnd``
-  * ``LLVMDIBuilderInsertDbgValueRecordBefore``
-  * ``LLVMDIBuilderInsertDbgValueRecordAtEnd``
-
-* Deleted the following functions that inserted a debug intrinsic (old debug info format).
-
-  * ``LLVMDIBuilderInsertDeclareBefore``
-  * ``LLVMDIBuilderInsertDeclareAtEnd``
-  * ``LLVMDIBuilderInsertDbgValueBefore``
-  * ``LLVMDIBuilderInsertDbgValueAtEnd``
-
-* Added the following functions for accessing a Target Extension Type's data:
-
-  * ``LLVMGetTargetExtTypeName``
-  * ``LLVMGetTargetExtTypeNumTypeParams``/``LLVMGetTargetExtTypeTypeParam``
-  * ``LLVMGetTargetExtTypeNumIntParams``/``LLVMGetTargetExtTypeIntParam``
-
-* Added the following functions for accessing/setting the no-wrap flags for a
-  GetElementPtr instruction:
-
-  * ``LLVMBuildGEPWithNoWrapFlags``
-  * ``LLVMConstGEPWithNoWrapFlags``
-  * ``LLVMGEPGetNoWrapFlags``
-  * ``LLVMGEPSetNoWrapFlags``
-
-* Added the following functions for creating and accessing data for ConstantPtrAuth constants:
-
-  * ``LLVMConstantPtrAuth``
-  * ``LLVMGetConstantPtrAuthPointer``
-  * ``LLVMGetConstantPtrAuthKey``
-  * ``LLVMGetConstantPtrAuthDiscriminator``
-  * ``LLVMGetConstantPtrAuthAddrDiscriminator``
-
 Changes to the CodeGen infrastructure
 -------------------------------------
 
@@ -344,106 +119,14 @@
 Changes to the Debug Info
 ---------------------------------
 
-* LLVM has switched from using debug intrinsics internally to using debug
-  records by default. This should happen transparently when using the DIBuilder
-  to construct debug variable information, but will require changes for any code
-  that interacts with debug intrinsics directly. Debug intrinsics will only be
-  supported on a best-effort basis from here onwards; for more information, see
-  the `migration docs <https://llvm.org/docs/RemoveDIsDebugInfo.html>`_.
-
-* When emitting DWARF v2 and not in strict DWARF mode, LLVM will now add
-  a ``DW_AT_type`` to instances of ``DW_TAG_enumeration_type``. This is actually
-  a DWARF v3 feature which tells tools what the enum's underlying type is.
-  Emitting this for v2 as well will help users who have to build binaries with
-  DWARF v2 but are using tools that understand newer DWARF standards. Older
-  tools will ignore it. (`#98335 <https://github.com/llvm/llvm-project/pull/98335>`_)
-
 Changes to the LLVM tools
 ---------------------------------
-* llvm-nm and llvm-objdump can now print symbol information from linked
-  WebAssembly binaries, using information from exports or the "name"
-  section for functions, globals and data segments. Symbol addresses and sizes
-  are printed as offsets in the file, allowing for binary size analysis. Wasm
-  files using reference types and GC are also supported (but also only for
-  functions, globals, and data, and only for listing symbols and names).
-
-* llvm-ar now utilizes LLVM_DEFAULT_TARGET_TRIPLE to determine the archive format
-  if it's not specified with the ``--format`` argument and cannot be inferred from
-  input files.
-
-* llvm-ar now allows specifying COFF archive format with ``--format`` argument
-  and uses it by default for COFF targets.
-
-* llvm-ranlib now supports ``-V`` as an alias for ``--version``.
-  ``-v`` (``--verbose`` in llvm-ar) has been removed.
-  (`#87661 <https://github.com/llvm/llvm-project/pull/87661>`_)
-
-* llvm-objcopy now supports ``--set-symbol-visibility`` and
-  ``--set-symbols-visibility`` options for ELF input to change the
-  visibility of symbols.
-
-* llvm-objcopy now supports ``--skip-symbol`` and ``--skip-symbols`` options
-  for ELF input to skip the specified symbols when executing other options
-  that can change a symbol's name, binding or visibility.
-
-* llvm-objcopy now supports ``--compress-sections`` to compress or decompress
-  arbitrary sections not within a segment.
-  (`#85036 <https://github.com/llvm/llvm-project/pull/85036>`_.)
-
-* llvm-profgen now supports COFF+DWARF binaries. This enables Sample-based PGO
-  on Windows using Intel VTune's SEP. For details on usage, see the `end-user
-  documentation for SPGO
-  <https://clang.llvm.org/docs/UsersManual.html#using-sampling-profilers>`_.
-
-* llvm-readelf's ``-r`` output for RELR has been improved.
-  (`#89162 <https://github.com/llvm/llvm-project/pull/89162>`_)
-  ``--raw-relr`` has been removed.
-
-* llvm-mca now aborts by default if it is given bad input where previously it
-  would continue. Additionally, it can now continue when it encounters
-  instructions which lack scheduling information. The behaviour can be
-  controlled by the newly introduced
-  ``--skip-unsupported-instructions=<none|lack-sched|parse-failure|any>``, as
-  documented in ``--help`` output and the command guide. (`#90474
-  <https://github.com/llvm/llvm-project/pull/90474>`_)
-
-* llvm-readobj's LLVM output format for ELF core files has been changed.
-  Similarly, the JSON format has been fixed for this case. The NT_FILE note
-  now has a map for the mapped files. (`#92835
-  <https://github.com/llvm/llvm-project/pull/92835>`_).
-
-* llvm-cov now generates HTML report with JavaScript code to allow simple
-  jumping between uncovered parts (lines/regions/branches) of code 
-  using buttons on top-right corner of the page or using keys (L/R/B or 
-  jumping in reverse direction with shift+L/R/B). (`#95662
-  <https://github.com/llvm/llvm-project/pull/95662>`_).
-
-* llvm-objcopy now verifies format of ``.note`` sections for ELF input. This can
-  be disabled by ``--no-verify-note-sections``. (`#90458
-  <https://github.com/llvm/llvm-project/pull/90458>`).
 
 Changes to LLDB
 ---------------------------------
 
-* Register field information is now provided on AArch64 FreeBSD for live
-  processes and core files (previously only provided on AArch64 Linux).
-
-* Register field information can now include enums to represent field
-  values. Enums have been added for ``fpcr.RMode`` and ``mte_ctrl.TCF``
-  for AArch64 targets::
-
-    (lldb) register read fpcr
-        fpcr = 0x00000000
-             = (AHP = 0, DN = 0, FZ = 0, RMode = RN, <...>)
-
-  If you need to know the values of the enum, these can be found in
-  the output of ``register info`` for the same register.
-
 Changes to BOLT
 ---------------------------------
-* Now supports ``--match-profile-with-function-hash`` to match profiled and
-  binary functions with exact hash, allowing for the matching of renamed but
-  identical functions.
 
 Changes to Sanitizers
 ---------------------
diff --git a/openmp/docs/ReleaseNotes.rst b/openmp/docs/ReleaseNotes.rst
index df944c3..d4a4b1a 100644
--- a/openmp/docs/ReleaseNotes.rst
+++ b/openmp/docs/ReleaseNotes.rst
@@ -1,5 +1,5 @@
 ===========================
-OpenMP 19.0.0 Release Notes
+OpenMP 20.0.0 Release Notes
 ===========================
 
 
diff --git a/pstl/docs/ReleaseNotes.rst b/pstl/docs/ReleaseNotes.rst
index 342b2ea..941b029 100644
--- a/pstl/docs/ReleaseNotes.rst
+++ b/pstl/docs/ReleaseNotes.rst
@@ -1,5 +1,5 @@
 =======================================
-PSTL 19.0.0 (In-Progress) Release Notes
+PSTL 20.0.0 (In-Progress) Release Notes
 =======================================
 
 .. contents::