On 02/09/14 16:34, Kyrill Tkachov wrote:
Hi all,

In continuation of patch [1/2]...
We can use the vector forms of the vcvt{a,p,m} instructions to vectorise
the l{round, ceil, floor}f functions.
Builtins are added and the TARGET_VECTORIZE_BUILTIN_VECTORIZED_FUNCTION
implementation is updated to wire up the vectorised forms of these
functions to the midend.

Bootstrapped and tested on arm-none-linux-gnueabihf.

Ok for trunk?

Ok - thanks.

Ramana

Thanks,
Kyrill

2014-09-02  Kyrylo Tkachov  <kyrylo.tkac...@arm.com>

      PR target/62275
      * config/arm/neon.md
   (neon_vcvt<NEON_VCVT:nvrint_variant><su_optab><VCVTF:mode>
      <v_cmp_result>): New pattern.
      * config/arm/iterators.md (NEON_VCVT): New int iterator.
      * config/arm/arm_neon_builtins.def (vcvtav2sf, vcvtav4sf, vcvtauv2sf,
      vcvtauv4sf, vcvtpv2sf, vcvtpv4sf, vcvtpuv2sf, vcvtpuv4sf, vcvtmv2sf,
      vcvtmv4sf, vcvtmuv2sf, vcvtmuv4sf): New builtin definitions.
      * config/arm/arm.c (arm_builtin_vectorized_function): Handle
      BUILT_IN_LROUNDF, BUILT_IN_LFLOORF, BUILT_IN_LCEILF.

2014-09-02  Kyrylo Tkachov  <kyrylo.tkac...@arm.com>

      PR target/62275
      * gcc.target/arm/vect-lceilf_1.c: New test.
      * gcc.target/arm/vect-lfloorf_1.c: Likewise.
      * gcc.target/arm/vect-lroundf_1.c: Likewise.

Reply via email to