]> git.ipfire.org Git - thirdparty/gcc.git/commit
aarch64: Add rcpc3 dependency on rcpc2 and rcpc
authorAndrew Carlotti <andrew.carlotti@arm.com>
Fri, 12 Apr 2024 01:09:57 +0000 (02:09 +0100)
committerAndrew Carlotti <andrew.carlotti@arm.com>
Fri, 12 Apr 2024 23:40:48 +0000 (00:40 +0100)
commit967424dcde6bf2d821b581b8f75b5a839e650fed
treeff51c82421a4ef1b87c60c7b7fdb1fa301c613b3
parentb18162759a6d464256b0195bc6447f0a1c9dd5dd
aarch64: Add rcpc3 dependency on rcpc2 and rcpc

We don't yet have a separate feature flag for FEAT_LRCPC2 (and adding
one will require extending the feature bitmask).  Instead, make the
FEAT_LRCPC2 patterns available when either armv8.4-a or +rcpc3 is
specified.  We already have a +rcpc flag, so this dependency can be
specified directly.

Also add an explicit dependance on +rcpc to the FEAT_LRCPC2 patterns, so
that they are disabled with armv8.4-a+norcpc.

The cpunative test needed updating because it used an invalid Features
list, since lrcpc3 requires both ilrcpc and lrcpc to be present.
Without this change, host_detect_local_cpu would return the architecture
string 'armv8-a+dotprod+crc+crypto+rcpc3+norcpc'.

gcc/ChangeLog:

* config/aarch64/aarch64-option-extensions.def: Add RCPC to
RCPC3 dependencies.
* config/aarch64/aarch64.h (AARCH64_ISA_RCPC8_4): Add test for
RCPC3 bit

gcc/testsuite/ChangeLog:

* gcc.target/aarch64/cpunative/info_24: Include lrcpc and ilrcpc.
gcc/config/aarch64/aarch64-option-extensions.def
gcc/config/aarch64/aarch64.h
gcc/testsuite/gcc.target/aarch64/cpunative/info_24