On Tue, Jun 23, 2026 at 04:02:47PM +0000, Sivan Shani wrote:
> FEAT_SSVE_AES makes the existing SVE AES instructions (AESE, AESD, AESMC,
> AESIMC) available in Streaming SVE mode.
>
One tiny nit, but otherwise this is ok, thanks!
...
> diff --git a/gcc/config/aarch64/aarch64.h b/gcc/config/aarch64/aarch64.h
> index c3c61c6939c..83cbe46fed8 100644
> --- a/gcc/config/aarch64/aarch64.h
> +++ b/gcc/config/aarch64/aarch64.h
> @@ -290,10 +290,15 @@ constexpr auto AARCH64_FL_DEFAULT_ISA_MODE
> ATTRIBUTE_UNUSED
> /* SVE2 instructions, enabled in non-streaming mode through +sve2. */
> #define TARGET_SVE2 (AARCH64_HAVE_ISA (SVE2) || TARGET_STREAMING)
>
> -/* SVE2 AES instructions, enabled through +sve2-aes. */
> -#define TARGET_SVE2_AES (AARCH64_HAVE_ISA (SVE2) \
> - && AARCH64_HAVE_ISA (SVE_AES) \
> - && TARGET_NON_STREAMING)
> +/*
> +For:
> + - SVE2 AES instructions (enabled through +sve2-aes)
> + - SSVE AES instructions (enabled through +ssve-aes)
> +*/
These are the same instructions, just enabled below, so I think it would be
better to reword the comment like the SVE BITPERM one below:
/* SVE AES instructions, enabled through +sve-aes+sve2 for non-streaming mode
and +ssve-aes for streaming mode. */
> +#define TARGET_SVE_AES (AARCH64_HAVE_ISA (SVE_AES) \
> + && (AARCH64_HAVE_ISA (SVE2) || TARGET_STREAMING) \
> + && (AARCH64_HAVE_ISA (SSVE_AES) \
> + || TARGET_NON_STREAMING))
>
> /* SVE BITPERM instructions, enabled through +sve-bitperm+sve2 for
> non-streaming
> and +ssve-bitperm for streaming. */