]> gcc.gnu.org Git - gcc.git/commit
aarch64: Add attributes for builtins specified in aarch64-builtins.c
authorKyrylo Tkachov <kyrylo.tkachov@arm.com>
Fri, 21 May 2021 13:46:00 +0000 (14:46 +0100)
committerKyrylo Tkachov <kyrylo.tkachov@arm.com>
Fri, 21 May 2021 13:46:00 +0000 (14:46 +0100)
commit079c23cfe079f203d5df83fea8e92a60c7d7e878
tree69ec39f39b0d2df402c31668a4507fea1dba2d3e
parent5ae352467a5a9414c0abea008f3719c6d3ae54e7
aarch64: Add attributes for builtins specified in aarch64-builtins.c

Besides the builtins in aarch64-simd-builtins.def there are a number of builtins defined in aarch64-builtins.c itself.
They could also benefit from the attributes generated by aarch64_get_attributes.
However aarch64_get_attributes and its helpers are only set up to handle a aarch64_simd_builtin_datum.

This patch changes these functions to instead take a flag and mode value that are extracted from
aarch64_simd_builtin_datum.flags and aarch64_simd_builtin_datum.mode anyway.
Then the various builtin init functions in aarch64-builtins.c can pass down their own FLAG_* flags
that they want to derive attributes from.

gcc/ChangeLog:

* config/aarch64/aarch64-builtins.c (aarch64_call_properties):
Take a flag and mode value as arguments.
(aarch64_modifies_global_state_p): Likewise.
(aarch64_reads_global_state_p): Likewise.
(aarch64_could_trap_p): Likewise.
(aarch64_get_attributes): Likewise.
(aarch64_init_simd_builtins): Adjust callsite of above.
(aarch64_init_fcmla_laneq_builtins): Use aarch64_get_attributes to get
function attributes to apply to builtins.
(aarch64_init_crc32_builtins): Likewise.
(aarch64_init_builtin_rsqrt): Likewise.
gcc/config/aarch64/aarch64-builtins.c
This page took 0.06823 seconds and 6 git commands to generate.