aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPrathamesh Kulkarni <prathamesh.kulkarni@linaro.org>2020-12-16 11:32:25 +0530
committerPrathamesh Kulkarni <prathamesh.kulkarni@linaro.org>2020-12-16 11:32:25 +0530
commitcff6dac28a0699cb26cdaafe1dbae255a7ee8030 (patch)
tree7cb1fc561876a153c37cd11300e5d9ae6ffdfc83
parent6e9d865119a1077081de3d4ea9d2caf641c8dcb7 (diff)
downloadgcc-cff6dac28a0699cb26cdaafe1dbae255a7ee8030.zip
gcc-cff6dac28a0699cb26cdaafe1dbae255a7ee8030.tar.gz
gcc-cff6dac28a0699cb26cdaafe1dbae255a7ee8030.tar.bz2
arm: Replace calls to __builtin_vcreate* in arm_neon.h [PR66791]
gcc/ 2020-12-16 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org> PR target/66791 * config/arm/arm_neon.h: Replace calls to __builtin_vcreate* in vcreate intrinsics. * config/arm/arm_neon_builtins.def: Remove entry for vcreate.
-rw-r--r--gcc/config/arm/arm_neon.h22
-rw-r--r--gcc/config/arm/arm_neon_builtins.def1
2 files changed, 11 insertions, 12 deletions
diff --git a/gcc/config/arm/arm_neon.h b/gcc/config/arm/arm_neon.h
index 6c600b3..ed2e914 100644
--- a/gcc/config/arm/arm_neon.h
+++ b/gcc/config/arm/arm_neon.h
@@ -6539,28 +6539,28 @@ __extension__ extern __inline int8x8_t
__attribute__ ((__always_inline__, __gnu_inline__, __artificial__))
vcreate_s8 (uint64_t __a)
{
- return (int8x8_t)__builtin_neon_vcreatev8qi ((__builtin_neon_di) __a);
+ return (int8x8_t) __a;
}
__extension__ extern __inline int16x4_t
__attribute__ ((__always_inline__, __gnu_inline__, __artificial__))
vcreate_s16 (uint64_t __a)
{
- return (int16x4_t)__builtin_neon_vcreatev4hi ((__builtin_neon_di) __a);
+ return (int16x4_t) __a;
}
__extension__ extern __inline int32x2_t
__attribute__ ((__always_inline__, __gnu_inline__, __artificial__))
vcreate_s32 (uint64_t __a)
{
- return (int32x2_t)__builtin_neon_vcreatev2si ((__builtin_neon_di) __a);
+ return (int32x2_t) __a;
}
__extension__ extern __inline int64x1_t
__attribute__ ((__always_inline__, __gnu_inline__, __artificial__))
vcreate_s64 (uint64_t __a)
{
- return (int64x1_t)__builtin_neon_vcreatedi ((__builtin_neon_di) __a);
+ return (int64x1_t) {__a};
}
#if defined (__ARM_FP16_FORMAT_IEEE) || defined (__ARM_FP16_FORMAT_ALTERNATIVE)
@@ -6576,49 +6576,49 @@ __extension__ extern __inline float32x2_t
__attribute__ ((__always_inline__, __gnu_inline__, __artificial__))
vcreate_f32 (uint64_t __a)
{
- return (float32x2_t)__builtin_neon_vcreatev2sf ((__builtin_neon_di) __a);
+ return (float32x2_t) __a;
}
__extension__ extern __inline uint8x8_t
__attribute__ ((__always_inline__, __gnu_inline__, __artificial__))
vcreate_u8 (uint64_t __a)
{
- return (uint8x8_t)__builtin_neon_vcreatev8qi ((__builtin_neon_di) __a);
+ return (uint8x8_t) __a;
}
__extension__ extern __inline uint16x4_t
__attribute__ ((__always_inline__, __gnu_inline__, __artificial__))
vcreate_u16 (uint64_t __a)
{
- return (uint16x4_t)__builtin_neon_vcreatev4hi ((__builtin_neon_di) __a);
+ return (uint16x4_t) __a;
}
__extension__ extern __inline uint32x2_t
__attribute__ ((__always_inline__, __gnu_inline__, __artificial__))
vcreate_u32 (uint64_t __a)
{
- return (uint32x2_t)__builtin_neon_vcreatev2si ((__builtin_neon_di) __a);
+ return (uint32x2_t) __a;
}
__extension__ extern __inline uint64x1_t
__attribute__ ((__always_inline__, __gnu_inline__, __artificial__))
vcreate_u64 (uint64_t __a)
{
- return (uint64x1_t)__builtin_neon_vcreatedi ((__builtin_neon_di) __a);
+ return (uint64x1_t) {__a};
}
__extension__ extern __inline poly8x8_t
__attribute__ ((__always_inline__, __gnu_inline__, __artificial__))
vcreate_p8 (uint64_t __a)
{
- return (poly8x8_t)__builtin_neon_vcreatev8qi ((__builtin_neon_di) __a);
+ return (poly8x8_t) __a;
}
__extension__ extern __inline poly16x4_t
__attribute__ ((__always_inline__, __gnu_inline__, __artificial__))
vcreate_p16 (uint64_t __a)
{
- return (poly16x4_t)__builtin_neon_vcreatev4hi ((__builtin_neon_di) __a);
+ return (poly16x4_t) __a;
}
__extension__ extern __inline int8x8_t
diff --git a/gcc/config/arm/arm_neon_builtins.def b/gcc/config/arm/arm_neon_builtins.def
index 1a1a851..cf90427 100644
--- a/gcc/config/arm/arm_neon_builtins.def
+++ b/gcc/config/arm/arm_neon_builtins.def
@@ -217,7 +217,6 @@ VAR10 (GETLANE, vget_lane,
VAR6 (GETLANE, vget_laneu, v8qi, v4hi, v2si, v16qi, v8hi, v4si)
VAR10 (SETLANE, vset_lane,
v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di)
-VAR5 (UNOP, vcreate, v8qi, v4hi, v2si, v2sf, di)
VAR10 (UNOP, vdup_n,
v8qi, v4hi, v2si, v2sf, di, v16qi, v8hi, v4si, v4sf, v2di)
VAR4 (UNOP, vdup_n, v8hf, v4hf, v8bf, v4bf)