[Patch, ARM] Implement support for NEON vmovn.
Tejas Belagod
tejas.belagod@arm.com
Wed Sep 15 12:46:00 GMT 2010
On Wed, 2010-09-01 at 15:55 +0100, Richard Earnshaw wrote:
> On Tue, 2010-08-31 at 15:26 +0100, Tejas Belagod wrote:
> > OK. Attached is a new patch that changes the vect_pack_trunc flag in
> > target-supports.exp. There are tests already in gcc.dg/vect (eg.
> > vect-multitypes-14.c) that check for vect_pack_trunc support and pass if
> > loops are vectorized. These tests pass with this patch. But they are not
> > written to xfail if vect_pack_trunc is not supported - should they have
> > been?
> >
> > --
> > Tejas Belagod
> > ARM.
> >
> > New Changelog:
> >
> > gcc/
> >
> > 2010-08-31 Tejas Belagod <tejas.belagod@arm.com>
> >
> > * config/arm/neon.md (vec_pack_trunc_<mode>): Instruction
> > pattern for vmovn. Expansion in case of non
> > -mvectorize-with-neon-quad.
> > (neon_vec_pack_trunc_<mode>): Instruction pattern for vmovn for
> > non- -mvectorize-with-neon-quad case.
> > (move_lo_quad_<mode>): New expansion to vmov into low part.
> > (move_hi_quad_<mode>): New expansion to vmov into high part.
> > (move_lo_quad_v4si): Refactor to move_lo_quad_<mode> expansion.
> > (move_lo_quad_v4sf): Likewise.
> > (move_lo_quad_v8hi): Likewise.
> > (neon_move_lo_quad_<mode>): Instruction pattern for vmov into
> > low part.
> > (neon_move_hi_quad_<mode>): Instruction pattern for vmov into
> > high part.
> > * config/arm/iterators.md (ANY128): New mode iterator.
> > (V_narrow_pack): New mode attribute.
> > (V_HALF): Add attribute.
> > (V_DOUBLE): Add attribute.
> > (V_mode_nunits): Add attribute.
> >
> > gcc/testsuite
> >
> > 2010-08-31 Tejas Belagod <tejas.belagod@arm.com>
> >
> > * lib/target-supports.exp
> > (check_effective_target_vect_pack_trunc): Set vect_pack_trunc
> > supported flag to true for neon.
> >
>
> This is OK.
>
> R.
>
Hi,
I have checked this patch in.
Thanks,
Tejas.
More information about the Gcc-patches
mailing list