[1/3][aarch64] Add vec_widen patterns to aarch64
authorJoel Hutton <joel.hutton@arm.com>
Thu, 19 Nov 2020 10:28:38 +0000 (10:28 +0000)
committerJoel Hutton <joel.hutton@arm.com>
Thu, 19 Nov 2020 11:47:43 +0000 (11:47 +0000)
commitec46904edfec162f32b8b411301374afc8f5fcb5
treecde918f2fcb2d7f08459b35602ca54297f71bbd9
parentec383f0bdb4077b744d493d02afff5f13f33029e
[1/3][aarch64] Add vec_widen patterns to aarch64

Add widening add and subtract patterns to the aarch64
backend. These allow taking vectors of N elements of size S
and performing and add/subtract on the high or low half
widening the resulting elements and storing N/2 elements of size 2*S.
These correspond to the addl,addl2,subl,subl2 instructions.

gcc/ChangeLog:

* config/aarch64/aarch64-simd.md: New patterns
vec_widen_saddl_lo/hi_<mode>.
gcc/config/aarch64/aarch64-simd.md