]> git.ipfire.org Git - thirdparty/gcc.git/commit
aarch64: encapsulate note.gnu.property emission into a class
authorMatthieu Longo <matthieu.longo@arm.com>
Wed, 4 Jun 2025 11:10:05 +0000 (12:10 +0100)
committerMatthieu Longo <matthieu.longo@arm.com>
Mon, 16 Jun 2025 13:12:40 +0000 (14:12 +0100)
commit0b4a3c146312fa9edde12abba31b1f285b5a378d
tree2075630573a20b52651882db22773bf5d091b7e6
parent138d0a20f8d81670bb616d440fc8990833e70aab
aarch64: encapsulate note.gnu.property emission into a class

The code emitting the GNU properties was moved to a separate file to
improve modularity and "releave" the 31000-lines long aarch64.cc file
from a few lines.

It introduces a new namespace "aarch64::" for AArch64 backend which
reduce the length of function names by not prepending 'aarch64_' to
each of them.

gcc/ChangeLog:

* Makefile.in: Add missing declaration of BACKEND_H.
* config.gcc: Add aarch64-elf-metadata.o to extra_objs.
* config/aarch64/aarch64-elf-metadata.h: New file
* config/aarch64/aarch64-elf-metadata.cc: New file.
* config/aarch64/aarch64.cc
(GNU_PROPERTY_AARCH64_FEATURE_1_AND): Removed.
(GNU_PROPERTY_AARCH64_FEATURE_1_BTI): Likewise.
(GNU_PROPERTY_AARCH64_FEATURE_1_PAC): Likewise.
(GNU_PROPERTY_AARCH64_FEATURE_1_GCS): Likewise.
(aarch64_file_end_indicate_exec_stack): Move GNU properties code to
aarch64-elf-metadata.cc
* config/aarch64/t-aarch64: Declare target aarch64-elf-metadata.o
gcc/Makefile.in
gcc/config.gcc
gcc/config/aarch64/aarch64-elf-metadata.cc [new file with mode: 0644]
gcc/config/aarch64/aarch64-elf-metadata.h [new file with mode: 0644]
gcc/config/aarch64/aarch64.cc
gcc/config/aarch64/t-aarch64