Skip to content

Releases: ARM-software/acle

Latest

Choose a tag to compare

@github-actions github-actions released this 30 Sep 11:52
ed21e97

Build of latest commit (ed21e97)

ACLE 2026 Q1

Choose a tag to compare

@vhscampos vhscampos released this 18 May 08:39

Release highlights

The documents modified in this release are:

  • Arm C Language Extensions.
  • Arm Neon Intrinsics Reference.

List of changes

  • Added support for modal 8-bit floating point matrix multiply-accumulate widening intrinsics.
  • Added support for 16-bit floating point matrix multiply-accumulate widening intrinsics.
  • Added restrictions of Function Multi Versioning’s use with other extensions.
  • Upgraded Function Multi Versioning to Release support level.
  • Removed _single from svmla_za16[_mf8]_vg2x1_fpm and svmla_za32[_mf8]_vg4x1_fpm.
  • Improved documentation for VMLA/VMLS intrinsics for floats.
  • Added support for producer-consumer data placement hints.
  • Added support for range prefetch intrinsic and __ARM_PREFETCH_RANGE macro.
  • Added Alpha support for SVE2.2 (FEAT_SVE2p2)
  • Added Alpha support for SME2.2 (FEAT_SME2p2).
  • Added Alpha support for FEAT_SVE_AES2, FEAT_SSVE_AES intrinsics.
  • Added support for FEAT_FPRCVT intrinsics and __ARM_FEATURE_FPRCVT.
  • Removed all references to Transactional Memory Extension (TME).
  • Added Alpha support for Brain 16-bit floating-point vector multiplication intrinsics.
  • Redesigned atomic store with hints intrinsics.

ACLE 2025 Q3

Choose a tag to compare

@vhscampos vhscampos released this 14 Nov 11:33

Release highlights

The documents modified in this release are:

  • Arm C Language Extensions.

List of changes

  • Added feature test macro for FEAT_SSVE_FEXPA.
  • Added feature test macro for FEAT_CSSC.
  • Added Function Multi Versioning feature priority syntax.

ACLE 2025 Q2

Choose a tag to compare

@vhscampos vhscampos released this 06 Jun 08:35

Release highlights

The documents modified in this release are:

  • Arm C Language Extensions.
  • Arm Neon Intrinsics Reference.

List of changes

  • Changed the Function Multi Versioning default version rules to be more explicit.
  • Added Alpha support for structured sparsity outer product intrinsics.
  • Added Alpha support for quarter-tile outer product intrinsics.
  • Removed the priority column from the mapping tables of Function Multi Versioning.
  • Added Function Multi Versioning feature cssc.
  • Added feature test macro for FEAT_SSVE_BitPerm.
  • Upgrade to Beta support for modal 8-bit floating point intrinsics.

ACLE 2024 Q4

Choose a tag to compare

@vhscampos vhscampos released this 21 Feb 10:41

Release highlights

The documents modified in this release are:

  • Arm C Language Extensions.
  • Arm Neon Intrinsics Reference.

List of changes

  • Unified Function Multi Versioning features ssbs and ssbs2.
  • Unified Function Multi Versioning features memtag and memtag2.
  • Unified Function Multi Versioning features aes and pmull.
  • Unified Function Multi Versioning features sve2-aes and sve2-pmull128.
  • Removed Function Multi Versioning features sve-bf16, sve-ebf16, and sve-i8mm.
  • Removed Function Multi Versioning features ebf16, memtag3, and rpres.
  • Removed Function Multi Versioning feature dgh.
  • Removed Function Multi Versioning features ls64 and predres.
  • Document Function Multi Versioning feature dependencies.
  • Clarify Function Multi Versioning feature dependency rule.
  • Simplified Function Multi Versioning version selection rules.
  • Fixed range of operand o0 (too small) in AArch64 system register designations.
  • Fixed SVE2.1 quadword gather load/scatter store intrinsics.
  • Removed unnecessary Zd argument from svcvtnb_mf8[_f32_x2]_fpm.
  • Changed name mangling of function types to include SME attributes.
  • Changed __ARM_NEON_SVE_BRIDGE to refer to the availability of the arm_neon_sve_bridge.h header file, rather than the NEON-SVE bridge intrinsics.
  • Removed extraneous const from SVE2.1 store intrinsics.
  • Added __arm_agnostic keyword attribute.
  • Refined function versioning scope and signature rules to use the default version scope and signature.
  • Added _n forms of the SVE2p1 and SME2 svdot intrinsics.
  • Changed the status of the SME2p1 from Alpha to Beta.
  • Changed the status of the SVE2p1 from Alpha to Beta.
  • Added mf8 variants of SME 2.1 intrinsics.
  • Added svdot[_n_f16_mf8]_fpm and svdot[_n_f32_mf8]_fpm.
  • Added Guarded Control Stack (GCS) at Beta quality level.

ACLE 2024 Q3

Choose a tag to compare

@vhscampos vhscampos released this 30 Sep 09:11

Release highlights

The documents modified in this release are:

  • Arm C Language Extensions.
  • Arm Neon Intrinsics Reference.

List of changes

  • Fixed incorrect system register dependencies in Function Multi Versioning.
  • Added a requirement for function version declaration in Function Multi Versioning.
  • Added __FUNCTION_MULTI_VERSIONING_SUPPORT_LEVEL to indicate the support level of the Function Multi
    Versioning.
  • Unified Function Multi Versioning features sha1 and sha2.
  • Unified Function Multi Versioning features ls64, ls64_v, and ls64_accdata.
  • Added Alpha support for SME2.1 (FEAT_SME2p1).
  • Removed requirement to add preprocessor guards for header files.
  • Added specifications for floating-point absolute minimum and maximum intrinsics (FEAT_FAMINMAX).
  • Added specifications for table lookup intrinsics (FEAT_LUT, FEAT_SME_LUTv2).
  • Added Release support level for the Custom Datapath Extension.
  • Added Alpha support for modal 8-bit floating point intrinsics.
  • Fixed the range of the lane immediate argument for vst2q_lane_f64.

ACLE 2024 Q2

Choose a tag to compare

@vhscampos vhscampos released this 21 Jun 11:13

Release highlights

The documents modified in this release are:

  • Arm C Language Extensions.
  • Arm®v8-M Security Extensions Requirements on Development Tools.

List of changes

  • Added new content for the handling of arguments in CMSE Entry functions and return values of CMSE Nonsecure calls in order to address security issues.
  • Added Alpha support for SVE2.1 (FEAT_SVE2p1).

ACLE 2024 Q1

Choose a tag to compare

@vhscampos vhscampos released this 11 Apr 13:03

Release highlights

The documents modified in this release are:

  • Arm C Language Extensions.

List of changes

  • 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 section.
  • Changed the SME language extensions to use keyword attributes instead of GNU-style attributes.
  • Added description of SVE reinterpret intrinsics.
  • Changes and fixes for Function Multi Versioning:
    • Changed the mangling rules, such that feature names are appended in lexicographic order, not in priority order.
    • Mangled names contain a unique set of features (no duplicates).
    • Added MOPS.
    • Changed name mangling of the default version.
    • Aligned priorities to account for feature dependencies.
    • Introduced alternative names (aliases) rdma for rdm.
    • Corrected FEAT_BTI feature register value.
  • Introduced the __ARM_FEATURE_PAUTH_LR feature macro in section Pointer Authentication to indicate target support for the Armv9.5-A PAC Enhancements.
  • Introduced a new value to the __ARM_FEATURE_PAC_DEFAULT macro to indicate the use of PC as a diversifier for Pointer Authentication.
  • Added a State management section, replacing the __arm_shared_za, __arm_new_za, and __arm_preserves_za attributes in the previous Alpha SME spec.
  • Changed the status of the SME ACLE from Alpha to Beta.

ACLE 2023 Q2

Choose a tag to compare

@vhscampos vhscampos released this 07 Aug 08:23

Release highlights

The documents modified in this release are:

  • Arm C Language Extensions.
  • Arm Neon Intrinsics Reference.
  • Armv8-M Security Extensions Requirements on Development Tools.

List of changes

  • Added SLC as a valid Cache Level for the Memory prefetch intrinsics.
  • Added support for 128-bit system registers, including two intrinsics for accessing them (__rsr128 and __wsr128), and a feature macro to detect if they are available (__ARM_FEATURE_SYSREG128).
  • Added support for FEAT_LRCPC3 LDAP1/STL1 intrinsics and __ARM_FEATURE_RCPC.
  • Corrected the mandatory architecture versions for FEAT_LRCPC and FEAT_LRCPC2.
  • Corrected references to -pedantic flag.
  • Fixed typos.
  • Fixes for Function Multi Versioning:
    • Renamed features to sme-f64f64 and sme-i16i64
    • Corrected register name to ID_AA64SMFR0_EL1.I16I64
  • Removed incorrect optimisation remark in CMSE's floating-point register clearing.
  • Removed incorrect information about the floating-point ABI used in CMSE's Arguments on the stack and floating point handling.
  • Corrected description and example in CMSE's section about non-secure function pointers.

ACLE 2022 Q4

Choose a tag to compare

@vhscampos vhscampos released this 23 Nov 14:30

Release highlights

The only document changed in this release is the main Arm C Language Extensions, at version 2022Q4.

List of changes:

  1. Added Alpha support for SME.
  2. Added feature detection macro __ARM_FEATURE_RCPC for RCpc (Release Consistent processor consistent) model at RCpc.
  3. Added two new valid values to the SVE feature macros:
    • __ARM_FEATURE_SVE_VECTOR_OPERATORS=2.
    • __ARM_FEATURE_SVE_PREDICATE_OPERATORS=2.
  4. Fixes for Function Multi Versioning:
    • Added missing features of ID_AA64ISAR1_EL1 and ID_AA64ISAR2_EL1.
    • Renamed the feature macro to __HAVE_FUNCTION_MULTI_VERSIONING.
    • Added some clarifications.