[Patch, ARM] Implement support for NEON vmovn.
Tejas Belagod
tejas.belagod@arm.com
Tue Aug 31 14:40:00 GMT 2010
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.
On Tue, 2010-08-31 at 11:51 +0000, Joseph S. Myers wrote:
> On Tue, 31 Aug 2010, Tejas Belagod wrote:
>
> > Hi,
> >
> > Attached is a patch that implements support for generating NEON
> > VMOVN.i<size>. This patch also refactors
>
> Is it possible to add a testcase to the testsuite that fails before and
> passes after this patch and demonstrates that it generates the desired
> code on appropriate testcases?
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: vmovn.txt
Type: text/x-patch
Size: 7872 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20100831/0541afa6/attachment.bin>
More information about the Gcc-patches
mailing list