From 5378fadffada402bada8e4d3a58dece5a6024d8c Mon Sep 17 00:00:00 2001 From: Daniel Kiss Date: Fri, 23 Feb 2024 15:55:33 +0100 Subject: [PATCH 1/2] Introduce __ARM_ACLE_VERSION macro. --- main/acle.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/main/acle.md b/main/acle.md index 2e4e14cb..69a29952 100644 --- a/main/acle.md +++ b/main/acle.md @@ -355,6 +355,7 @@ Armv8.4-A [[ARMARMv84]](#ARMARMv84). Support is added for the Dot Product intrin * Changed the definition of the `__ARM_ACLE` macro to reflect the current versioning scheme. +* Added `__ARM_ACLE_VERSION` to express a given ACLE version. * Combined the SME `slice_base` and `slice_offset` arguments into a single `slice` argument. * Added the [Keyword attributes](#keyword-attributes) section. @@ -1347,6 +1348,10 @@ version of this specification implemented. For instance, an implementation implementing version 2.1 of the ACLE specification defined `__ARM_ACLE` as `201`. +`__ARM_ACLE_VERSION(year, quarter, patch)` is defined to express a given +ACLE version. Returns with the version number in the same format as the +`__ARM_ACLE` does. + ## Endianness `__ARM_BIG_ENDIAN` is defined as 1 if data is stored by default in From 7f929e696700f2afbc5a0615b51ab833e1df16ac Mon Sep 17 00:00:00 2001 From: Daniel Kiss Date: Mon, 26 Feb 2024 15:23:50 +0100 Subject: [PATCH 2/2] Add example. --- main/acle.md | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/main/acle.md b/main/acle.md index 69a29952..5f7cc4f5 100644 --- a/main/acle.md +++ b/main/acle.md @@ -1350,7 +1350,12 @@ as `201`. `__ARM_ACLE_VERSION(year, quarter, patch)` is defined to express a given ACLE version. Returns with the version number in the same format as the -`__ARM_ACLE` does. +`__ARM_ACLE` does. Checking the minimum required ACLE version could be +written as: + +``` c +#if __ARM_ACLE >= __ARM_ACLE_VERSION(2024, 1, 0) +``` ## Endianness