]> git.ipfire.org Git - thirdparty/gcc.git/commit
AArch64: Update system register database.
authorVictor Do Nascimento <victor.donascimento@arm.com>
Wed, 31 Jan 2024 18:58:33 +0000 (18:58 +0000)
committerVictor Do Nascimento <victor.donascimento@arm.com>
Wed, 7 Feb 2024 13:02:06 +0000 (13:02 +0000)
commita698cbfbe5b02e6bfa4898621698cf522d191d6c
treeb1319c212b9f098171e8f454f0f00bdfe9d7fe78
parentaf3f0482367232d2d655e51bee382e98ddbfb117
AArch64: Update system register database.

With the release of Binutils 2.42, this brings the level of
system-register support in GCC in line with the current
state-of-the-art in Binutils, ensuring everything available in
Binutils is plainly accessible from GCC.

Where Binutils uses a more detailed description of which features are
responsible for enabling a given system register, GCC aliases the
binutils-equivalent feature flag macro constant to that of the base
architecture implementing the feature, resulting in entries such as

  #define AARCH64_FL_S2PIE    AARCH64_FL_V8_9A

in `aarch64.h', thus ensuring that the Binutils `aarch64-sys-regs.def'
file can be understood by GCC without the need for modification.

To accompany the addition of the new system registers, a new test is
added confirming they were successfully added to the list of
recognized registers.

gcc/ChangeLog:

* config/aarch64/aarch64-sys-regs.def: Copy from Binutils.
* config/aarch64/aarch64.h (AARCH64_FL_AIE): New.
(AARCH64_FL_DEBUGv8p9): Likewise.
(AARCH64_FL_FGT2): Likewise.Likewise.
(AARCH64_FL_ITE): Likewise.
(AARCH64_FL_PFAR): Likewise.
(AARCH64_FL_PMUv3_ICNTR): Likewise.
(AARCH64_FL_PMUv3_SS): Likewise.
(AARCH64_FL_PMUv3p9): Likewise.
(AARCH64_FL_RASv2): Likewise.
(AARCH64_FL_S1PIE): Likewise.
(AARCH64_FL_S1POE): Likewise.
(AARCH64_FL_S2PIE): Likewise.
(AARCH64_FL_S2POE): Likewise.
(AARCH64_FL_SCTLR2): Likewise.
(AARCH64_FL_SEBEP): Likewise.
(AARCH64_FL_SPE_FDS): Likewise.
(AARCH64_FL_TCR2): Likewise.

gcc/testsuite/ChangeLog:

* gcc.target/aarch64/acle/rwsr-armv8p9.c: New.
gcc/config/aarch64/aarch64-sys-regs.def
gcc/config/aarch64/aarch64.h
gcc/testsuite/gcc.target/aarch64/acle/rwsr-armv8p9.c [new file with mode: 0644]