aboutsummaryrefslogtreecommitdiff
path: root/gcc/fold-const.c
diff options
context:
space:
mode:
authorAlan Lawrence <alan.lawrence@arm.com>2015-09-08 18:57:31 +0000
committerAlan Lawrence <alalaw01@gcc.gnu.org>2015-09-08 18:57:31 +0000
commit71a11456ef9b85dc6cc098151d90b6651db7f0df (patch)
tree6fd918033aa59c6ceeeeb4ee3964422e5d09ca6d /gcc/fold-const.c
parent4b644867b3db01ff49bd0972980bd7b26705a000 (diff)
downloadgcc-71a11456ef9b85dc6cc098151d90b6651db7f0df.zip
gcc-71a11456ef9b85dc6cc098151d90b6651db7f0df.tar.gz
gcc-71a11456ef9b85dc6cc098151d90b6651db7f0df.tar.bz2
[AArch64] Add support for float16x{4,8}_t vectors/builtins
gcc/: * config/aarch64/aarch64.c (aarch64_vector_mode_supported_p): Support V4HFmode and V8HFmode. (aarch64_split_simd_move): Add case for V8HFmode. * config/aarch64/aarch64-builtins.c (v4hf_UP, v8hf_UP): Define. (aarch64_simd_builtin_std_type): Handle HFmode. (aarch64_init_simd_builtin_types): Include Float16x4_t and Float16x8_t. * config/aarch64/aarch64-simd.md (mov<mode>, aarch64_get_lane<mode>, aarch64_ld1<VALL:mode>, aarch64_st1<VALL:mode): Use VALL_F16 iterator. (aarch64_be_ld1<mode>, aarch64_be_st1<mode>): Use VALLDI_F16 iterator. * config/aarch64/aarch64-simd-builtin-types.def: Add Float16x4_t, Float16x8_t. * config/aarch64/aarch64-simd-builtins.def (ld1, st1): Use VALL_F16. * config/aarch64/arm_neon.h (float16x4_t, float16x8_t, float16_t): New typedefs. (vget_lane_f16, vgetq_lane_f16, vset_lane_f16, vsetq_lane_f16, vld1_f16, vld1q_f16, vst1_f16, vst1q_f16, vst1_lane_f16, vst1q_lane_f16): New. * config/aarch64/iterators.md (VD, VQ, VQ_NO2E): Add vectors of HFmode. (VALLDI_F16, VALL_F16): New. (Vmtype, VEL, VCONQ, VHALF, V_TWO_ELEM, V_THREE_ELEM, V_FOUR_ELEM, q): Add cases for V4HF and V8HF. (VDBL, VRL2, VRL3, VRL4): Add V4HF case. gcc/testsuite/: * g++.dg/abi/mangle-neon-aarch64.C: Add cases for float16x4_t and float16x8_t. * gcc.target/aarch64/vset_lane_1.c: Likewise. * gcc.target/aarch64/vld1-vst1_1.c: Likewise. * gcc.target/aarch64/vld1_lane.c: Likewise. From-SVN: r227542
Diffstat (limited to 'gcc/fold-const.c')
0 files changed, 0 insertions, 0 deletions