https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68620
--- Comment #8 from Christophe Lyon <clyon at gcc dot gnu.org> --- Author: clyon Date: Tue Jan 26 15:17:00 2016 New Revision: 232832 URL: https://gcc.gnu.org/viewcvs?rev=232832&root=gcc&view=rev Log: 2016-01-26 Christophe Lyon <christophe.l...@linaro.org> gcc/ PR target/68620 * config/arm/arm.c (neon_valid_immediate): Handle FP16 vectors. * config/arm/arm_neon.h (__ARM_NUM_LANES, __arm_lane, arm_lanq): New helper macros. (vget_lane_f16): Handle big-endian. (vgetq_lane_f16): Likewise. (vset_lane_f16): Likewise. (vsetq_lane_f16): Likewise. * config/arm/iterators.md (VQXMOV): Add V8HF. (VDQ): Add V4HF and V8HF. (V_reg): Handle V4HF and V8HF. (Is_float_mode): Likewise. * config/arm/neon.md (movv4hf, movv8hf, neon_vdup_nv4hf, neon_vdup_nv8hf): New patterns. (vec_set<mode>_internal, vec_extract<mode>, neon_vld1_dup<mode>): Use VD_LANE iterator. (neon_vld1_dup<mode>): Use VQ2 iterator. testsuite/ PR target/68620 * gcc.target/arm/pr68620.c: New test. Added: trunk/gcc/testsuite/gcc.target/arm/pr68620.c Modified: trunk/gcc/ChangeLog trunk/gcc/config/arm/arm.c trunk/gcc/config/arm/arm_neon.h trunk/gcc/config/arm/iterators.md trunk/gcc/config/arm/neon.md trunk/gcc/testsuite/ChangeLog