diff options
author | Jonathan Wright <jonathan.wright@arm.com> | 2021-11-10 10:49:19 +0000 |
---|---|---|
committer | Jonathan Wright <jonathan.wright@arm.com> | 2021-11-11 15:34:51 +0000 |
commit | 1716ddd1e9e7a5c63062e07ac3ca41364fea9917 (patch) | |
tree | 4ee1e74f00ddf2b1a7e13a00cb766850bdda638e /gcc/fortran/dump-parse-tree.c | |
parent | 6eca10aa761c56b9a26763e036c72475337194f8 (diff) | |
download | gcc-1716ddd1e9e7a5c63062e07ac3ca41364fea9917.zip gcc-1716ddd1e9e7a5c63062e07ac3ca41364fea9917.tar.gz gcc-1716ddd1e9e7a5c63062e07ac3ca41364fea9917.tar.bz2 |
aarch64: Use type-qualified builtins for LD1/ST1 Neon intrinsics
Declare unsigned and polynomial type-qualified builtins for LD1/ST1
Neon intrinsics. Using these builtins removes the need for many casts
in arm_neon.h.
The new type-qualified builtins are also lowered to gimple - as the
unqualified builtins are already.
gcc/ChangeLog:
2021-11-10 Jonathan Wright <jonathan.wright@arm.com>
* config/aarch64/aarch64-builtins.c (TYPES_LOAD1_U): Define.
(TYPES_LOAD1_P): Define.
(TYPES_STORE1_U): Define.
(TYPES_STORE1P): Rename to...
(TYPES_STORE1_P): This.
(get_mem_type_for_load_store): Add unsigned and poly types.
(aarch64_general_gimple_fold_builtin): Add unsigned and poly
type-qualified builtin declarations.
* config/aarch64/aarch64-simd-builtins.def: Declare type-
qualified builtins for LD1/ST1.
* config/aarch64/arm_neon.h (vld1_p8): Use type-qualified
builtin and remove cast.
(vld1_p16): Likewise.
(vld1_u8): Likewise.
(vld1_u16): Likewise.
(vld1_u32): Likewise.
(vld1q_p8): Likewise.
(vld1q_p16): Likewise.
(vld1q_p64): Likewise.
(vld1q_u8): Likewise.
(vld1q_u16): Likewise.
(vld1q_u32): Likewise.
(vld1q_u64): Likewise.
(vst1_p8): Likewise.
(vst1_p16): Likewise.
(vst1_u8): Likewise.
(vst1_u16): Likewise.
(vst1_u32): Likewise.
(vst1q_p8): Likewise.
(vst1q_p16): Likewise.
(vst1q_p64): Likewise.
(vst1q_u8): Likewise.
(vst1q_u16): Likewise.
(vst1q_u32): Likewise.
(vst1q_u64): Likewise.
* config/aarch64/iterators.md (VALLP_NO_DI): New iterator.
Diffstat (limited to 'gcc/fortran/dump-parse-tree.c')
0 files changed, 0 insertions, 0 deletions