On Mon, Nov 09, 2015 at 11:40:11AM +0000, Bilyan Borisov wrote:
> This patch adds an extension to aarch64_gimple_fold_builtin () that does
> constant folding on __builtin_fmulx* calls for 32 and 64 bit floating point
> scalar modes. We fold when both arguments are constant, as well as when only 
> one
> is. The special cases of 0*inf, -0*inf, 0*-inf, and -0*-inf are also
> handled. The case for vector constant arguments will be dealt with in a future
> patch since the tests for that would be obscure and would unnecessarily
> complicate this patch.
> 
> Added tests to check for proper handling of constant folding. Tested on 
> targets
> aarch64-none-elf and aarch64_be-none-elf.
> 
> ---
> 
> gcc/
> 
> 2015-XX-XX  Bilyan Borisov  <bilyan.bori...@arm.com>
> 
>       * config/aarch64/aarch64-builtins.c (aarch64_gimple_fold_builtin): Added
>       constant folding.
> 
> gcc/testsuite/
> 
> 2015-XX-XX  Bilyan Borisov  <bilyan.bori...@arm.com>
> 
>       * gcc.target/aarch64/simd/vmulx.x: New.
>       * gcc.target/aarch64/simd/vmulx_f64_2.c: Likewise.
>       * gcc.target/aarch64/simd/vmulxd_f64_2.c: Likewise.
>       * gcc.target/aarch64/simd/vmulxs_f32_2.c: Likewise.
> 

OK, thanks.

I've committed this on your behalf as revision 230758 with a slight tweak to
the changelog to read:

        * config/aarch64/aarch64-builtins.c
        (aarch64_gimple_fold_builtin): Fold FMULX.

Thanks,
James

Reply via email to