[llvm-branch-commits] [llvm] 78729e5 - [FMV][AArch64] Release notes for LLVM20. (#125525)
via llvm-branch-commits
llvm-branch-commits at lists.llvm.org
Wed Feb 5 17:27:39 PST 2025
Author: Alexandros Lamprineas
Date: 2025-02-05T17:27:35-08:00
New Revision: 78729e5ae25e92354654c70cb9d91c3cb7e05bba
URL: https://github.com/llvm/llvm-project/commit/78729e5ae25e92354654c70cb9d91c3cb7e05bba
DIFF: https://github.com/llvm/llvm-project/commit/78729e5ae25e92354654c70cb9d91c3cb7e05bba.diff
LOG: [FMV][AArch64] Release notes for LLVM20. (#125525)
Added:
Modified:
clang/docs/ReleaseNotes.rst
llvm/docs/ReleaseNotes.md
Removed:
################################################################################
diff --git a/clang/docs/ReleaseNotes.rst b/clang/docs/ReleaseNotes.rst
index 53534d821b2c9a9..b23963c8e611a1a 100644
--- a/clang/docs/ReleaseNotes.rst
+++ b/clang/docs/ReleaseNotes.rst
@@ -654,6 +654,10 @@ Attribute Changes in Clang
- The ``target_version`` attribute is now only supported for AArch64 and RISC-V architectures.
+- When targeting AArch64, a function declaration annotated with ``target_version("default")``
+ now generates a mangled default version of the function, whereas before at least one more
+ version other than the default was required to trigger Function Multi Versioning.
+
- Clang now permits the usage of the placement new operator in ``[[msvc::constexpr]]``
context outside of the std namespace. (#GH74924)
@@ -1188,6 +1192,9 @@ Arm and AArch64 Support
* FUJITSU-MONAKA (fujitsu-monaka)
+- Runtime detection of depended-on Function Multi Versioning features has been added
+ in accordance with the Arm C Language Extensions (ACLE).
+
Android Support
^^^^^^^^^^^^^^^
diff --git a/llvm/docs/ReleaseNotes.md b/llvm/docs/ReleaseNotes.md
index e0acb8f48c5b940..db9a681ebe2bc57 100644
--- a/llvm/docs/ReleaseNotes.md
+++ b/llvm/docs/ReleaseNotes.md
@@ -130,6 +130,10 @@ Changes to building LLVM
Changes to TableGen
-------------------
+* The ARMTargetDefEmitter now binds Funtion Multi Versioning features to the
+ corresponding AArch64 Architecture Extensions such that their dependencies
+ can be autogenerated using TableGen.
+
Changes to Interprocedural Optimizations
----------------------------------------
@@ -431,9 +435,19 @@ Changes to the C API
Changes to the CodeGen infrastructure
-------------------------------------
+* GlobalOpt can now statically resolve calls to multi-versioned functions when targeting AArch64.
+ These calls would otherwise be routed through an IFunc resolver function. This optimization
+ can be applied when the caller is either a multi-versioned function itself, or it is compiled
+ with a sufficiently high set of architecture features (including the `target` attribute, and
+ command line options).
+
Changes to the Metadata Info
---------------------------------
+* Multi-versioned functions targeting AArch64 are annotated with new metadata named `fmv-features`.
+ The metadata string value consists of a comma-separated list of Function Multi Versioning feature
+ names as defined in the Arm C Language Extensions (ACLE).
+
Changes to the Debug Info
---------------------------------
More information about the llvm-branch-commits
mailing list