[AArch64] Remove TODO (redundant type conversions) in arm_neon.h
gcc/ * config/aarch64/aarch64-builtins.c (aarch64_types_unopus_qualifiers): New. (TYPES_UNOPUS): Likewise. * config/aarch64/aarch64-simd-builtins.def (lbtruncuv2sf): Correct builtin type, from UNOP to UNOPUS. (lbtruncuv4sf): Likewise. (lbtruncuv2df): Likewise. (lrounduv2sf): Likewise. (lrounduv4sf): Likewise. (lrounduv2df): Likewise. (lroundusf): Likewise. (lroundusf): Likewise. (lceiluv2sf): Likewise. (lceiluv4sf): Likewise. (lceiluv2df): Likewise. (lceilusf): Likewise. (lceiludf): Likewise. (lflooruv2sf): Likewise. (lflooruv4sf): Likewise. (lflooruv2df): Likewise. (lfloorusf): Likewise. (lfloorudf): Likewise. (lfrintnuv2sf): Likewise. (lfrintnuv4sf): Likewise. (lfrintnuv2df): Likewise. (lfrintnusf): Likewise. (lfrintnudf): Likewise. * config/aarch64/arm_neon.h (vcvt_u32_f32): Remove unncessary type conversion. (vcvtq_u32_f32): Likewise. (vcvtq_u64_f64): Likewise. (vcvta_u32_f32): Likewise. (vcvtaq_u32_f32): Likewise. (vcvtaq_u64_f64): Likewise. (vcvtm_u32_f32): Likewise. (vcvtmq_u32_f32): Likewise. (vcvtmq_u64_f64): Likewise. (vcvtn_u32_f32): Likwise. (vcvtnq_u32_f32): Likewise. (vcvtnq_u64_f64): Likewise. (vcvtp_u32_f32): Likewise. (vcvtpq_u32_f32): Likewise. (vcvtpq_u64_f64): Likewise. (vcvtmd_u64_f64): Likewise. (vcvtms_u32_f32): Likewise. (vcvtad_u64_f64): Likewise. (vcvtas_u32_f32): Likewise. (vcvtnd_u64_f64): Likewise. (vcvtns_u32_f32): Likewise. (vcvtpd_u64_f64): Likewise. (vcvtps_u32_f32): Likewise. From-SVN: r232444
This commit is contained in:
parent
bad00732aa
commit
a579f4c752
@ -1,3 +1,57 @@
|
|||||||
|
2016-01-15 Jiong Wang <jiong.wang@arm.com>
|
||||||
|
|
||||||
|
* config/aarch64/aarch64-builtins.c (aarch64_types_unopus_qualifiers):
|
||||||
|
New.
|
||||||
|
(TYPES_UNOPUS): Likewise.
|
||||||
|
* config/aarch64/aarch64-simd-builtins.def (lbtruncuv2sf): Correct
|
||||||
|
builtin type, from UNOP to UNOPUS.
|
||||||
|
(lbtruncuv4sf): Likewise.
|
||||||
|
(lbtruncuv2df): Likewise.
|
||||||
|
(lrounduv2sf): Likewise.
|
||||||
|
(lrounduv4sf): Likewise.
|
||||||
|
(lrounduv2df): Likewise.
|
||||||
|
(lroundusf): Likewise.
|
||||||
|
(lroundusf): Likewise.
|
||||||
|
(lceiluv2sf): Likewise.
|
||||||
|
(lceiluv4sf): Likewise.
|
||||||
|
(lceiluv2df): Likewise.
|
||||||
|
(lceilusf): Likewise.
|
||||||
|
(lceiludf): Likewise.
|
||||||
|
(lflooruv2sf): Likewise.
|
||||||
|
(lflooruv4sf): Likewise.
|
||||||
|
(lflooruv2df): Likewise.
|
||||||
|
(lfloorusf): Likewise.
|
||||||
|
(lfloorudf): Likewise.
|
||||||
|
(lfrintnuv2sf): Likewise.
|
||||||
|
(lfrintnuv4sf): Likewise.
|
||||||
|
(lfrintnuv2df): Likewise.
|
||||||
|
(lfrintnusf): Likewise.
|
||||||
|
(lfrintnudf): Likewise.
|
||||||
|
* config/aarch64/arm_neon.h (vcvt_u32_f32): Remove unncessary type
|
||||||
|
conversion.
|
||||||
|
(vcvtq_u32_f32): Likewise.
|
||||||
|
(vcvtq_u64_f64): Likewise.
|
||||||
|
(vcvta_u32_f32): Likewise.
|
||||||
|
(vcvtaq_u32_f32): Likewise.
|
||||||
|
(vcvtaq_u64_f64): Likewise.
|
||||||
|
(vcvtm_u32_f32): Likewise.
|
||||||
|
(vcvtmq_u32_f32): Likewise.
|
||||||
|
(vcvtmq_u64_f64): Likewise.
|
||||||
|
(vcvtn_u32_f32): Likwise.
|
||||||
|
(vcvtnq_u32_f32): Likewise.
|
||||||
|
(vcvtnq_u64_f64): Likewise.
|
||||||
|
(vcvtp_u32_f32): Likewise.
|
||||||
|
(vcvtpq_u32_f32): Likewise.
|
||||||
|
(vcvtpq_u64_f64): Likewise.
|
||||||
|
(vcvtmd_u64_f64): Likewise.
|
||||||
|
(vcvtms_u32_f32): Likewise.
|
||||||
|
(vcvtad_u64_f64): Likewise.
|
||||||
|
(vcvtas_u32_f32): Likewise.
|
||||||
|
(vcvtnd_u64_f64): Likewise.
|
||||||
|
(vcvtns_u32_f32): Likewise.
|
||||||
|
(vcvtpd_u64_f64): Likewise.
|
||||||
|
(vcvtps_u32_f32): Likewise.
|
||||||
|
|
||||||
2016-01-15 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
|
2016-01-15 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
|
||||||
|
|
||||||
* config/aarch64/aarch64.c (aarch64_if_then_else_costs): Handle
|
* config/aarch64/aarch64.c (aarch64_if_then_else_costs): Handle
|
||||||
|
@ -119,6 +119,10 @@ aarch64_types_unopu_qualifiers[SIMD_MAX_BUILTIN_ARGS]
|
|||||||
= { qualifier_unsigned, qualifier_unsigned };
|
= { qualifier_unsigned, qualifier_unsigned };
|
||||||
#define TYPES_UNOPU (aarch64_types_unopu_qualifiers)
|
#define TYPES_UNOPU (aarch64_types_unopu_qualifiers)
|
||||||
static enum aarch64_type_qualifiers
|
static enum aarch64_type_qualifiers
|
||||||
|
aarch64_types_unopus_qualifiers[SIMD_MAX_BUILTIN_ARGS]
|
||||||
|
= { qualifier_unsigned, qualifier_none };
|
||||||
|
#define TYPES_UNOPUS (aarch64_types_unopus_qualifiers)
|
||||||
|
static enum aarch64_type_qualifiers
|
||||||
aarch64_types_binop_qualifiers[SIMD_MAX_BUILTIN_ARGS]
|
aarch64_types_binop_qualifiers[SIMD_MAX_BUILTIN_ARGS]
|
||||||
= { qualifier_none, qualifier_none, qualifier_maybe_immediate };
|
= { qualifier_none, qualifier_none, qualifier_maybe_immediate };
|
||||||
#define TYPES_BINOP (aarch64_types_binop_qualifiers)
|
#define TYPES_BINOP (aarch64_types_binop_qualifiers)
|
||||||
|
@ -275,9 +275,9 @@
|
|||||||
VAR1 (UNOP, lbtruncv4sf, 2, v4si)
|
VAR1 (UNOP, lbtruncv4sf, 2, v4si)
|
||||||
VAR1 (UNOP, lbtruncv2df, 2, v2di)
|
VAR1 (UNOP, lbtruncv2df, 2, v2di)
|
||||||
|
|
||||||
VAR1 (UNOP, lbtruncuv2sf, 2, v2si)
|
VAR1 (UNOPUS, lbtruncuv2sf, 2, v2si)
|
||||||
VAR1 (UNOP, lbtruncuv4sf, 2, v4si)
|
VAR1 (UNOPUS, lbtruncuv4sf, 2, v4si)
|
||||||
VAR1 (UNOP, lbtruncuv2df, 2, v2di)
|
VAR1 (UNOPUS, lbtruncuv2df, 2, v2di)
|
||||||
|
|
||||||
VAR1 (UNOP, lroundv2sf, 2, v2si)
|
VAR1 (UNOP, lroundv2sf, 2, v2si)
|
||||||
VAR1 (UNOP, lroundv4sf, 2, v4si)
|
VAR1 (UNOP, lroundv4sf, 2, v4si)
|
||||||
@ -286,31 +286,31 @@
|
|||||||
VAR1 (UNOP, lroundsf, 2, si)
|
VAR1 (UNOP, lroundsf, 2, si)
|
||||||
VAR1 (UNOP, lrounddf, 2, di)
|
VAR1 (UNOP, lrounddf, 2, di)
|
||||||
|
|
||||||
VAR1 (UNOP, lrounduv2sf, 2, v2si)
|
VAR1 (UNOPUS, lrounduv2sf, 2, v2si)
|
||||||
VAR1 (UNOP, lrounduv4sf, 2, v4si)
|
VAR1 (UNOPUS, lrounduv4sf, 2, v4si)
|
||||||
VAR1 (UNOP, lrounduv2df, 2, v2di)
|
VAR1 (UNOPUS, lrounduv2df, 2, v2di)
|
||||||
VAR1 (UNOP, lroundusf, 2, si)
|
VAR1 (UNOPUS, lroundusf, 2, si)
|
||||||
VAR1 (UNOP, lroundudf, 2, di)
|
VAR1 (UNOPUS, lroundudf, 2, di)
|
||||||
|
|
||||||
VAR1 (UNOP, lceilv2sf, 2, v2si)
|
VAR1 (UNOP, lceilv2sf, 2, v2si)
|
||||||
VAR1 (UNOP, lceilv4sf, 2, v4si)
|
VAR1 (UNOP, lceilv4sf, 2, v4si)
|
||||||
VAR1 (UNOP, lceilv2df, 2, v2di)
|
VAR1 (UNOP, lceilv2df, 2, v2di)
|
||||||
|
|
||||||
VAR1 (UNOP, lceiluv2sf, 2, v2si)
|
VAR1 (UNOPUS, lceiluv2sf, 2, v2si)
|
||||||
VAR1 (UNOP, lceiluv4sf, 2, v4si)
|
VAR1 (UNOPUS, lceiluv4sf, 2, v4si)
|
||||||
VAR1 (UNOP, lceiluv2df, 2, v2di)
|
VAR1 (UNOPUS, lceiluv2df, 2, v2di)
|
||||||
VAR1 (UNOP, lceilusf, 2, si)
|
VAR1 (UNOPUS, lceilusf, 2, si)
|
||||||
VAR1 (UNOP, lceiludf, 2, di)
|
VAR1 (UNOPUS, lceiludf, 2, di)
|
||||||
|
|
||||||
VAR1 (UNOP, lfloorv2sf, 2, v2si)
|
VAR1 (UNOP, lfloorv2sf, 2, v2si)
|
||||||
VAR1 (UNOP, lfloorv4sf, 2, v4si)
|
VAR1 (UNOP, lfloorv4sf, 2, v4si)
|
||||||
VAR1 (UNOP, lfloorv2df, 2, v2di)
|
VAR1 (UNOP, lfloorv2df, 2, v2di)
|
||||||
|
|
||||||
VAR1 (UNOP, lflooruv2sf, 2, v2si)
|
VAR1 (UNOPUS, lflooruv2sf, 2, v2si)
|
||||||
VAR1 (UNOP, lflooruv4sf, 2, v4si)
|
VAR1 (UNOPUS, lflooruv4sf, 2, v4si)
|
||||||
VAR1 (UNOP, lflooruv2df, 2, v2di)
|
VAR1 (UNOPUS, lflooruv2df, 2, v2di)
|
||||||
VAR1 (UNOP, lfloorusf, 2, si)
|
VAR1 (UNOPUS, lfloorusf, 2, si)
|
||||||
VAR1 (UNOP, lfloorudf, 2, di)
|
VAR1 (UNOPUS, lfloorudf, 2, di)
|
||||||
|
|
||||||
VAR1 (UNOP, lfrintnv2sf, 2, v2si)
|
VAR1 (UNOP, lfrintnv2sf, 2, v2si)
|
||||||
VAR1 (UNOP, lfrintnv4sf, 2, v4si)
|
VAR1 (UNOP, lfrintnv4sf, 2, v4si)
|
||||||
@ -318,11 +318,11 @@
|
|||||||
VAR1 (UNOP, lfrintnsf, 2, si)
|
VAR1 (UNOP, lfrintnsf, 2, si)
|
||||||
VAR1 (UNOP, lfrintndf, 2, di)
|
VAR1 (UNOP, lfrintndf, 2, di)
|
||||||
|
|
||||||
VAR1 (UNOP, lfrintnuv2sf, 2, v2si)
|
VAR1 (UNOPUS, lfrintnuv2sf, 2, v2si)
|
||||||
VAR1 (UNOP, lfrintnuv4sf, 2, v4si)
|
VAR1 (UNOPUS, lfrintnuv4sf, 2, v4si)
|
||||||
VAR1 (UNOP, lfrintnuv2df, 2, v2di)
|
VAR1 (UNOPUS, lfrintnuv2df, 2, v2di)
|
||||||
VAR1 (UNOP, lfrintnusf, 2, si)
|
VAR1 (UNOPUS, lfrintnusf, 2, si)
|
||||||
VAR1 (UNOP, lfrintnudf, 2, di)
|
VAR1 (UNOPUS, lfrintnudf, 2, di)
|
||||||
|
|
||||||
/* Implemented by <optab><fcvt_target><VDQF:mode>2. */
|
/* Implemented by <optab><fcvt_target><VDQF:mode>2. */
|
||||||
VAR1 (UNOP, floatv2si, 2, v2sf)
|
VAR1 (UNOP, floatv2si, 2, v2sf)
|
||||||
|
@ -13203,9 +13203,7 @@ vcvt_s32_f32 (float32x2_t __a)
|
|||||||
__extension__ static __inline uint32x2_t __attribute__ ((__always_inline__))
|
__extension__ static __inline uint32x2_t __attribute__ ((__always_inline__))
|
||||||
vcvt_u32_f32 (float32x2_t __a)
|
vcvt_u32_f32 (float32x2_t __a)
|
||||||
{
|
{
|
||||||
/* TODO: This cast should go away when builtins have
|
return __builtin_aarch64_lbtruncuv2sfv2si_us (__a);
|
||||||
their correct types. */
|
|
||||||
return (uint32x2_t) __builtin_aarch64_lbtruncuv2sfv2si (__a);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
__extension__ static __inline int32x4_t __attribute__ ((__always_inline__))
|
__extension__ static __inline int32x4_t __attribute__ ((__always_inline__))
|
||||||
@ -13217,9 +13215,7 @@ vcvtq_s32_f32 (float32x4_t __a)
|
|||||||
__extension__ static __inline uint32x4_t __attribute__ ((__always_inline__))
|
__extension__ static __inline uint32x4_t __attribute__ ((__always_inline__))
|
||||||
vcvtq_u32_f32 (float32x4_t __a)
|
vcvtq_u32_f32 (float32x4_t __a)
|
||||||
{
|
{
|
||||||
/* TODO: This cast should go away when builtins have
|
return __builtin_aarch64_lbtruncuv4sfv4si_us (__a);
|
||||||
their correct types. */
|
|
||||||
return (uint32x4_t) __builtin_aarch64_lbtruncuv4sfv4si (__a);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
__extension__ static __inline int64x2_t __attribute__ ((__always_inline__))
|
__extension__ static __inline int64x2_t __attribute__ ((__always_inline__))
|
||||||
@ -13231,9 +13227,7 @@ vcvtq_s64_f64 (float64x2_t __a)
|
|||||||
__extension__ static __inline uint64x2_t __attribute__ ((__always_inline__))
|
__extension__ static __inline uint64x2_t __attribute__ ((__always_inline__))
|
||||||
vcvtq_u64_f64 (float64x2_t __a)
|
vcvtq_u64_f64 (float64x2_t __a)
|
||||||
{
|
{
|
||||||
/* TODO: This cast should go away when builtins have
|
return __builtin_aarch64_lbtruncuv2dfv2di_us (__a);
|
||||||
their correct types. */
|
|
||||||
return (uint64x2_t) __builtin_aarch64_lbtruncuv2dfv2di (__a);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* vcvta */
|
/* vcvta */
|
||||||
@ -13247,7 +13241,7 @@ vcvtad_s64_f64 (float64_t __a)
|
|||||||
__extension__ static __inline uint64_t __attribute__ ((__always_inline__))
|
__extension__ static __inline uint64_t __attribute__ ((__always_inline__))
|
||||||
vcvtad_u64_f64 (float64_t __a)
|
vcvtad_u64_f64 (float64_t __a)
|
||||||
{
|
{
|
||||||
return __builtin_aarch64_lroundudfdi (__a);
|
return __builtin_aarch64_lroundudfdi_us (__a);
|
||||||
}
|
}
|
||||||
|
|
||||||
__extension__ static __inline int32_t __attribute__ ((__always_inline__))
|
__extension__ static __inline int32_t __attribute__ ((__always_inline__))
|
||||||
@ -13259,7 +13253,7 @@ vcvtas_s32_f32 (float32_t __a)
|
|||||||
__extension__ static __inline uint32_t __attribute__ ((__always_inline__))
|
__extension__ static __inline uint32_t __attribute__ ((__always_inline__))
|
||||||
vcvtas_u32_f32 (float32_t __a)
|
vcvtas_u32_f32 (float32_t __a)
|
||||||
{
|
{
|
||||||
return __builtin_aarch64_lroundusfsi (__a);
|
return __builtin_aarch64_lroundusfsi_us (__a);
|
||||||
}
|
}
|
||||||
|
|
||||||
__extension__ static __inline int32x2_t __attribute__ ((__always_inline__))
|
__extension__ static __inline int32x2_t __attribute__ ((__always_inline__))
|
||||||
@ -13271,9 +13265,7 @@ vcvta_s32_f32 (float32x2_t __a)
|
|||||||
__extension__ static __inline uint32x2_t __attribute__ ((__always_inline__))
|
__extension__ static __inline uint32x2_t __attribute__ ((__always_inline__))
|
||||||
vcvta_u32_f32 (float32x2_t __a)
|
vcvta_u32_f32 (float32x2_t __a)
|
||||||
{
|
{
|
||||||
/* TODO: This cast should go away when builtins have
|
return __builtin_aarch64_lrounduv2sfv2si_us (__a);
|
||||||
their correct types. */
|
|
||||||
return (uint32x2_t) __builtin_aarch64_lrounduv2sfv2si (__a);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
__extension__ static __inline int32x4_t __attribute__ ((__always_inline__))
|
__extension__ static __inline int32x4_t __attribute__ ((__always_inline__))
|
||||||
@ -13285,9 +13277,7 @@ vcvtaq_s32_f32 (float32x4_t __a)
|
|||||||
__extension__ static __inline uint32x4_t __attribute__ ((__always_inline__))
|
__extension__ static __inline uint32x4_t __attribute__ ((__always_inline__))
|
||||||
vcvtaq_u32_f32 (float32x4_t __a)
|
vcvtaq_u32_f32 (float32x4_t __a)
|
||||||
{
|
{
|
||||||
/* TODO: This cast should go away when builtins have
|
return __builtin_aarch64_lrounduv4sfv4si_us (__a);
|
||||||
their correct types. */
|
|
||||||
return (uint32x4_t) __builtin_aarch64_lrounduv4sfv4si (__a);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
__extension__ static __inline int64x2_t __attribute__ ((__always_inline__))
|
__extension__ static __inline int64x2_t __attribute__ ((__always_inline__))
|
||||||
@ -13299,9 +13289,7 @@ vcvtaq_s64_f64 (float64x2_t __a)
|
|||||||
__extension__ static __inline uint64x2_t __attribute__ ((__always_inline__))
|
__extension__ static __inline uint64x2_t __attribute__ ((__always_inline__))
|
||||||
vcvtaq_u64_f64 (float64x2_t __a)
|
vcvtaq_u64_f64 (float64x2_t __a)
|
||||||
{
|
{
|
||||||
/* TODO: This cast should go away when builtins have
|
return __builtin_aarch64_lrounduv2dfv2di_us (__a);
|
||||||
their correct types. */
|
|
||||||
return (uint64x2_t) __builtin_aarch64_lrounduv2dfv2di (__a);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* vcvtm */
|
/* vcvtm */
|
||||||
@ -13315,7 +13303,7 @@ vcvtmd_s64_f64 (float64_t __a)
|
|||||||
__extension__ static __inline uint64_t __attribute__ ((__always_inline__))
|
__extension__ static __inline uint64_t __attribute__ ((__always_inline__))
|
||||||
vcvtmd_u64_f64 (float64_t __a)
|
vcvtmd_u64_f64 (float64_t __a)
|
||||||
{
|
{
|
||||||
return __builtin_aarch64_lfloorudfdi (__a);
|
return __builtin_aarch64_lfloorudfdi_us (__a);
|
||||||
}
|
}
|
||||||
|
|
||||||
__extension__ static __inline int32_t __attribute__ ((__always_inline__))
|
__extension__ static __inline int32_t __attribute__ ((__always_inline__))
|
||||||
@ -13327,7 +13315,7 @@ vcvtms_s32_f32 (float32_t __a)
|
|||||||
__extension__ static __inline uint32_t __attribute__ ((__always_inline__))
|
__extension__ static __inline uint32_t __attribute__ ((__always_inline__))
|
||||||
vcvtms_u32_f32 (float32_t __a)
|
vcvtms_u32_f32 (float32_t __a)
|
||||||
{
|
{
|
||||||
return __builtin_aarch64_lfloorusfsi (__a);
|
return __builtin_aarch64_lfloorusfsi_us (__a);
|
||||||
}
|
}
|
||||||
|
|
||||||
__extension__ static __inline int32x2_t __attribute__ ((__always_inline__))
|
__extension__ static __inline int32x2_t __attribute__ ((__always_inline__))
|
||||||
@ -13339,9 +13327,7 @@ vcvtm_s32_f32 (float32x2_t __a)
|
|||||||
__extension__ static __inline uint32x2_t __attribute__ ((__always_inline__))
|
__extension__ static __inline uint32x2_t __attribute__ ((__always_inline__))
|
||||||
vcvtm_u32_f32 (float32x2_t __a)
|
vcvtm_u32_f32 (float32x2_t __a)
|
||||||
{
|
{
|
||||||
/* TODO: This cast should go away when builtins have
|
return __builtin_aarch64_lflooruv2sfv2si_us (__a);
|
||||||
their correct types. */
|
|
||||||
return (uint32x2_t) __builtin_aarch64_lflooruv2sfv2si (__a);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
__extension__ static __inline int32x4_t __attribute__ ((__always_inline__))
|
__extension__ static __inline int32x4_t __attribute__ ((__always_inline__))
|
||||||
@ -13353,9 +13339,7 @@ vcvtmq_s32_f32 (float32x4_t __a)
|
|||||||
__extension__ static __inline uint32x4_t __attribute__ ((__always_inline__))
|
__extension__ static __inline uint32x4_t __attribute__ ((__always_inline__))
|
||||||
vcvtmq_u32_f32 (float32x4_t __a)
|
vcvtmq_u32_f32 (float32x4_t __a)
|
||||||
{
|
{
|
||||||
/* TODO: This cast should go away when builtins have
|
return __builtin_aarch64_lflooruv4sfv4si_us (__a);
|
||||||
their correct types. */
|
|
||||||
return (uint32x4_t) __builtin_aarch64_lflooruv4sfv4si (__a);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
__extension__ static __inline int64x2_t __attribute__ ((__always_inline__))
|
__extension__ static __inline int64x2_t __attribute__ ((__always_inline__))
|
||||||
@ -13367,9 +13351,7 @@ vcvtmq_s64_f64 (float64x2_t __a)
|
|||||||
__extension__ static __inline uint64x2_t __attribute__ ((__always_inline__))
|
__extension__ static __inline uint64x2_t __attribute__ ((__always_inline__))
|
||||||
vcvtmq_u64_f64 (float64x2_t __a)
|
vcvtmq_u64_f64 (float64x2_t __a)
|
||||||
{
|
{
|
||||||
/* TODO: This cast should go away when builtins have
|
return __builtin_aarch64_lflooruv2dfv2di_us (__a);
|
||||||
their correct types. */
|
|
||||||
return (uint64x2_t) __builtin_aarch64_lflooruv2dfv2di (__a);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* vcvtn */
|
/* vcvtn */
|
||||||
@ -13383,7 +13365,7 @@ vcvtnd_s64_f64 (float64_t __a)
|
|||||||
__extension__ static __inline uint64_t __attribute__ ((__always_inline__))
|
__extension__ static __inline uint64_t __attribute__ ((__always_inline__))
|
||||||
vcvtnd_u64_f64 (float64_t __a)
|
vcvtnd_u64_f64 (float64_t __a)
|
||||||
{
|
{
|
||||||
return __builtin_aarch64_lfrintnudfdi (__a);
|
return __builtin_aarch64_lfrintnudfdi_us (__a);
|
||||||
}
|
}
|
||||||
|
|
||||||
__extension__ static __inline int32_t __attribute__ ((__always_inline__))
|
__extension__ static __inline int32_t __attribute__ ((__always_inline__))
|
||||||
@ -13395,7 +13377,7 @@ vcvtns_s32_f32 (float32_t __a)
|
|||||||
__extension__ static __inline uint32_t __attribute__ ((__always_inline__))
|
__extension__ static __inline uint32_t __attribute__ ((__always_inline__))
|
||||||
vcvtns_u32_f32 (float32_t __a)
|
vcvtns_u32_f32 (float32_t __a)
|
||||||
{
|
{
|
||||||
return __builtin_aarch64_lfrintnusfsi (__a);
|
return __builtin_aarch64_lfrintnusfsi_us (__a);
|
||||||
}
|
}
|
||||||
|
|
||||||
__extension__ static __inline int32x2_t __attribute__ ((__always_inline__))
|
__extension__ static __inline int32x2_t __attribute__ ((__always_inline__))
|
||||||
@ -13407,9 +13389,7 @@ vcvtn_s32_f32 (float32x2_t __a)
|
|||||||
__extension__ static __inline uint32x2_t __attribute__ ((__always_inline__))
|
__extension__ static __inline uint32x2_t __attribute__ ((__always_inline__))
|
||||||
vcvtn_u32_f32 (float32x2_t __a)
|
vcvtn_u32_f32 (float32x2_t __a)
|
||||||
{
|
{
|
||||||
/* TODO: This cast should go away when builtins have
|
return __builtin_aarch64_lfrintnuv2sfv2si_us (__a);
|
||||||
their correct types. */
|
|
||||||
return (uint32x2_t) __builtin_aarch64_lfrintnuv2sfv2si (__a);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
__extension__ static __inline int32x4_t __attribute__ ((__always_inline__))
|
__extension__ static __inline int32x4_t __attribute__ ((__always_inline__))
|
||||||
@ -13421,9 +13401,7 @@ vcvtnq_s32_f32 (float32x4_t __a)
|
|||||||
__extension__ static __inline uint32x4_t __attribute__ ((__always_inline__))
|
__extension__ static __inline uint32x4_t __attribute__ ((__always_inline__))
|
||||||
vcvtnq_u32_f32 (float32x4_t __a)
|
vcvtnq_u32_f32 (float32x4_t __a)
|
||||||
{
|
{
|
||||||
/* TODO: This cast should go away when builtins have
|
return __builtin_aarch64_lfrintnuv4sfv4si_us (__a);
|
||||||
their correct types. */
|
|
||||||
return (uint32x4_t) __builtin_aarch64_lfrintnuv4sfv4si (__a);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
__extension__ static __inline int64x2_t __attribute__ ((__always_inline__))
|
__extension__ static __inline int64x2_t __attribute__ ((__always_inline__))
|
||||||
@ -13435,9 +13413,7 @@ vcvtnq_s64_f64 (float64x2_t __a)
|
|||||||
__extension__ static __inline uint64x2_t __attribute__ ((__always_inline__))
|
__extension__ static __inline uint64x2_t __attribute__ ((__always_inline__))
|
||||||
vcvtnq_u64_f64 (float64x2_t __a)
|
vcvtnq_u64_f64 (float64x2_t __a)
|
||||||
{
|
{
|
||||||
/* TODO: This cast should go away when builtins have
|
return __builtin_aarch64_lfrintnuv2dfv2di_us (__a);
|
||||||
their correct types. */
|
|
||||||
return (uint64x2_t) __builtin_aarch64_lfrintnuv2dfv2di (__a);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* vcvtp */
|
/* vcvtp */
|
||||||
@ -13451,7 +13427,7 @@ vcvtpd_s64_f64 (float64_t __a)
|
|||||||
__extension__ static __inline uint64_t __attribute__ ((__always_inline__))
|
__extension__ static __inline uint64_t __attribute__ ((__always_inline__))
|
||||||
vcvtpd_u64_f64 (float64_t __a)
|
vcvtpd_u64_f64 (float64_t __a)
|
||||||
{
|
{
|
||||||
return __builtin_aarch64_lceiludfdi (__a);
|
return __builtin_aarch64_lceiludfdi_us (__a);
|
||||||
}
|
}
|
||||||
|
|
||||||
__extension__ static __inline int32_t __attribute__ ((__always_inline__))
|
__extension__ static __inline int32_t __attribute__ ((__always_inline__))
|
||||||
@ -13463,7 +13439,7 @@ vcvtps_s32_f32 (float32_t __a)
|
|||||||
__extension__ static __inline uint32_t __attribute__ ((__always_inline__))
|
__extension__ static __inline uint32_t __attribute__ ((__always_inline__))
|
||||||
vcvtps_u32_f32 (float32_t __a)
|
vcvtps_u32_f32 (float32_t __a)
|
||||||
{
|
{
|
||||||
return __builtin_aarch64_lceilusfsi (__a);
|
return __builtin_aarch64_lceilusfsi_us (__a);
|
||||||
}
|
}
|
||||||
|
|
||||||
__extension__ static __inline int32x2_t __attribute__ ((__always_inline__))
|
__extension__ static __inline int32x2_t __attribute__ ((__always_inline__))
|
||||||
@ -13475,9 +13451,7 @@ vcvtp_s32_f32 (float32x2_t __a)
|
|||||||
__extension__ static __inline uint32x2_t __attribute__ ((__always_inline__))
|
__extension__ static __inline uint32x2_t __attribute__ ((__always_inline__))
|
||||||
vcvtp_u32_f32 (float32x2_t __a)
|
vcvtp_u32_f32 (float32x2_t __a)
|
||||||
{
|
{
|
||||||
/* TODO: This cast should go away when builtins have
|
return __builtin_aarch64_lceiluv2sfv2si_us (__a);
|
||||||
their correct types. */
|
|
||||||
return (uint32x2_t) __builtin_aarch64_lceiluv2sfv2si (__a);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
__extension__ static __inline int32x4_t __attribute__ ((__always_inline__))
|
__extension__ static __inline int32x4_t __attribute__ ((__always_inline__))
|
||||||
@ -13489,9 +13463,7 @@ vcvtpq_s32_f32 (float32x4_t __a)
|
|||||||
__extension__ static __inline uint32x4_t __attribute__ ((__always_inline__))
|
__extension__ static __inline uint32x4_t __attribute__ ((__always_inline__))
|
||||||
vcvtpq_u32_f32 (float32x4_t __a)
|
vcvtpq_u32_f32 (float32x4_t __a)
|
||||||
{
|
{
|
||||||
/* TODO: This cast should go away when builtins have
|
return __builtin_aarch64_lceiluv4sfv4si_us (__a);
|
||||||
their correct types. */
|
|
||||||
return (uint32x4_t) __builtin_aarch64_lceiluv4sfv4si (__a);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
__extension__ static __inline int64x2_t __attribute__ ((__always_inline__))
|
__extension__ static __inline int64x2_t __attribute__ ((__always_inline__))
|
||||||
@ -13503,9 +13475,7 @@ vcvtpq_s64_f64 (float64x2_t __a)
|
|||||||
__extension__ static __inline uint64x2_t __attribute__ ((__always_inline__))
|
__extension__ static __inline uint64x2_t __attribute__ ((__always_inline__))
|
||||||
vcvtpq_u64_f64 (float64x2_t __a)
|
vcvtpq_u64_f64 (float64x2_t __a)
|
||||||
{
|
{
|
||||||
/* TODO: This cast should go away when builtins have
|
return __builtin_aarch64_lceiluv2dfv2di_us (__a);
|
||||||
their correct types. */
|
|
||||||
return (uint64x2_t) __builtin_aarch64_lceiluv2dfv2di (__a);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* vdup_n */
|
/* vdup_n */
|
||||||
|
Loading…
Reference in New Issue
Block a user