This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [AArch64] Remap neon vcmp functions to C/TREE
- From: Marcus Shawcroft <marcus dot shawcroft at gmail dot com>
- To: James Greenhalgh <james dot greenhalgh at arm dot com>
- Cc: "gcc-patches at gcc dot gnu dot org" <gcc-patches at gcc dot gnu dot org>, Marcus Shawcroft <marcus dot shawcroft at arm dot com>
- Date: Tue, 30 Apr 2013 18:21:23 +0100
- Subject: Re: [AArch64] Remap neon vcmp functions to C/TREE
- References: <1367333909-22296-1-git-send-email-james dot greenhalgh at arm dot com>
OK
/Marcus
On 30 April 2013 15:58, James Greenhalgh <james.greenhalgh@arm.com> wrote:
>
> Where possible, describe these Neon intrinsics in C. Where not
> possible, remap them to a builtin which will fold to an equivalent
> C function.
>
> Add the support code to allow folding of these instructions.
>
> As GE_EXPR, GT_EXPR, EQ_EXPR are GIMPLE and GENERIC codes, use
> TARGET_FOLD_BUILTIN.
>
> Regression tested on aarch64-none-elf with only bogus regressions
> (corrected in a separate patch).
>
> OK?
>
> Thanks,
> James
>
> ---
> gcc/
>
> 2013-04-29 James Greenhalgh <james.greenhalgh@arm.com>
>
> * config/aarch64/aarch64-builtins.c (BUILTIN_VALLDI): Define.
> (aarch64_fold_builtin): Add folding for cm<eq,ge,gt,tst>.
> * config/aarch64/aarch64-simd-builtins.def
> (cmeq): Update to BUILTIN_VALLDI.
> (cmgt): Likewise.
> (cmge): Likewise.
> (cmle): Likewise.
> (cmlt): Likewise.
> * config/aarch64/arm_neon.h
> (vc<eq, lt, le, gt, ge, tst><z><qsd>_<fpsu><8,16,32,64>): Remap
> to builtins or C as appropriate.