aboutsummaryrefslogtreecommitdiff
path: root/gcc/expr.c
diff options
context:
space:
mode:
authorKyrylo Tkachov <kyrylo.tkachov@arm.com>2021-05-21 14:46:00 +0100
committerKyrylo Tkachov <kyrylo.tkachov@arm.com>2021-05-21 14:46:00 +0100
commit079c23cfe079f203d5df83fea8e92a60c7d7e878 (patch)
tree69ec39f39b0d2df402c31668a4507fea1dba2d3e /gcc/expr.c
parent5ae352467a5a9414c0abea008f3719c6d3ae54e7 (diff)
downloadgcc-079c23cfe079f203d5df83fea8e92a60c7d7e878.zip
gcc-079c23cfe079f203d5df83fea8e92a60c7d7e878.tar.gz
gcc-079c23cfe079f203d5df83fea8e92a60c7d7e878.tar.bz2
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.
Diffstat (limited to 'gcc/expr.c')
0 files changed, 0 insertions, 0 deletions