]> git.feebdaed.xyz Git - 0xmirror/gcc.git/commit
aarch64: Add alias option support
authorAlfie Richards <alfie.richards@arm.com>
Wed, 12 Nov 2025 16:30:45 +0000 (16:30 +0000)
committerAlfie Richards <alfie.richards@arm.com>
Thu, 18 Dec 2025 10:10:39 +0000 (10:10 +0000)
commit4b281c6c515c36945bc233df9b9991d70c35d455
treeb69c5289d39d1d042814e6beb03697691a93e4f4
parenta0001ef5843cb7d833976b38894f2b08f5c153b8
aarch64: Add alias option support

Adds the AARCH64_OPT_EXTENSION_ALIAS macro to aarch64-option-extensions.def
to define architecture features which gate no features themselves, but
act as aliases for other features.

When getting the extension string for some architecture flags, alias features
should be used over their constituent features, even if some of the constituent
features are enabled transitively by other features.

Changes +crypto option to use this macro.

gcc/ChangeLog:

* common/config/aarch64/aarch64-common.cc
(struct aarch64_extension_info): Add flags_alias_preferred_over.
(AARCH64_OPT_EXTENSION): Add setting flags preferred over to 0.
(AARCH64_OPT_EXTENSION_ALIAS): New macro def.
(aarch64_get_extension_string_for_isa_flags): Update to use alias
extensions over constituent extensions.
* config/aarch64/aarch64-feature-deps.h (alias_flags): New variable
(AARCH64_OPT_EXTENSION): New macro def.
(AARCH64_OPT_EXTENSION_ALIAS): New macro def.
(HANDLE): Update to use alias_flags.
(AARCH64_CORE): Update to use alias_flags.
* config/aarch64/aarch64-option-extensions.def
(AARCH64_OPT_EXTENSION_ALIAS): New macro def to
define alias_prefer_over_flags_X.
(crypto): Update to us AARCH64_OPT_EXTENSION_ALIAS.
gcc/common/config/aarch64/aarch64-common.cc
gcc/config/aarch64/aarch64-feature-deps.h
gcc/config/aarch64/aarch64-option-extensions.def