gcc/
authorYufeng Zhang <yufeng.zhang@arm.com>
Wed, 12 Mar 2014 16:35:53 +0000 (16:35 +0000)
committerYufeng Zhang <yufeng@gcc.gnu.org>
Wed, 12 Mar 2014 16:35:53 +0000 (16:35 +0000)
* config/aarch64/aarch64-builtins.c
(aarch64_builtin_vectorized_function): Add BUILT_IN_LFLOORF,
BUILT_IN_LLFLOOR, BUILT_IN_LCEILF and BUILT_IN_LLCEIL.
* config/aarch64/arm_neon.h (vcvtaq_u64_f64): Call __builtin_llfloor
instead of __builtin_lfloor.
(vcvtnq_u64_f64): Call __builtin_llceil instead of __builtin_lceil.

From-SVN: r208517

gcc/ChangeLog
gcc/config/aarch64/aarch64-builtins.c
gcc/config/aarch64/arm_neon.h

index 3863dc1..5ae6831 100644 (file)
@@ -1,3 +1,12 @@
+2014-03-12  Yufeng Zhang  <yufeng.zhang@arm.com>
+
+       * config/aarch64/aarch64-builtins.c
+       (aarch64_builtin_vectorized_function): Add BUILT_IN_LFLOORF,
+       BUILT_IN_LLFLOOR, BUILT_IN_LCEILF and BUILT_IN_LLCEIL.
+       * config/aarch64/arm_neon.h (vcvtaq_u64_f64): Call __builtin_llfloor
+       instead of __builtin_lfloor.
+       (vcvtnq_u64_f64): Call __builtin_llceil instead of __builtin_lceil.
+
 2014-03-12  Jakub Jelinek  <jakub@redhat.com>
 
        * tree-ssa-ifcombine.c (forwarder_block_to): New function.
index ebab2ce..9dfe0b6 100644 (file)
@@ -1034,6 +1034,8 @@ aarch64_builtin_vectorized_function (tree fndecl, tree type_out, tree type_in)
   (out_mode == N##Imode && out_n == C \
    && in_mode == N##Fmode && in_n == C)
        case BUILT_IN_LFLOOR:
+       case BUILT_IN_LFLOORF:
+       case BUILT_IN_LLFLOOR:
        case BUILT_IN_IFLOORF:
          {
            enum aarch64_builtins builtin;
@@ -1049,6 +1051,8 @@ aarch64_builtin_vectorized_function (tree fndecl, tree type_out, tree type_in)
            return aarch64_builtin_decls[builtin];
          }
        case BUILT_IN_LCEIL:
+       case BUILT_IN_LCEILF:
+       case BUILT_IN_LLCEIL:
        case BUILT_IN_ICEILF:
          {
            enum aarch64_builtins builtin;
index 6af9936..8272a84 100644 (file)
@@ -17693,7 +17693,7 @@ vcvtaq_u64_f64 (float64x2_t __a)
 __extension__ static __inline int64_t __attribute__ ((__always_inline__))
 vcvtmd_s64_f64 (float64_t __a)
 {
-  return __builtin_lfloor (__a);
+  return __builtin_llfloor (__a);
 }
 
 __extension__ static __inline uint64_t __attribute__ ((__always_inline__))
@@ -17829,7 +17829,7 @@ vcvtnq_u64_f64 (float64x2_t __a)
 __extension__ static __inline int64_t __attribute__ ((__always_inline__))
 vcvtpd_s64_f64 (float64_t __a)
 {
-  return __builtin_lceil (__a);
+  return __builtin_llceil (__a);
 }
 
 __extension__ static __inline uint64_t __attribute__ ((__always_inline__))