aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKyrylo Tkachov <kyrylo.tkachov@arm.com>2014-07-17 10:35:26 +0000
committerKyrylo Tkachov <ktkachov@gcc.gnu.org>2014-07-17 10:35:26 +0000
commitec454483617259df71121e809472f7caeb13b34a (patch)
tree454cbd3e531e19a881dfb47b053f4027596ddd50
parent1d61feeb993d24642eca7f6a6a4f37cdcbf5848d (diff)
downloadgcc-ec454483617259df71121e809472f7caeb13b34a.zip
gcc-ec454483617259df71121e809472f7caeb13b34a.tar.gz
gcc-ec454483617259df71121e809472f7caeb13b34a.tar.bz2
[AArch64] Fix argument types for some high_lane* intrinsics implemented in assembly.
* config/aarch64/arm_neon.h (vmlal_high_lane_s16): Fix type. (vmlal_high_lane_s32): Likewise. (vmlal_high_lane_u16): Likewise. (vmlal_high_lane_u32): Likewise. (vmlsl_high_lane_s16): Likewise. (vmlsl_high_lane_s32): Likewise. (vmlsl_high_lane_u16): Likewise. (vmlsl_high_lane_u32): Likewise. From-SVN: r212752
-rw-r--r--gcc/ChangeLog11
-rw-r--r--gcc/config/aarch64/arm_neon.h16
2 files changed, 19 insertions, 8 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index b562008..eede13a 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,14 @@
+2014-07-17 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
+
+ * config/aarch64/arm_neon.h (vmlal_high_lane_s16): Fix type.
+ (vmlal_high_lane_s32): Likewise.
+ (vmlal_high_lane_u16): Likewise.
+ (vmlal_high_lane_u32): Likewise.
+ (vmlsl_high_lane_s16): Likewise.
+ (vmlsl_high_lane_s32): Likewise.
+ (vmlsl_high_lane_u16): Likewise.
+ (vmlsl_high_lane_u32): Likewise.
+
2014-07-17 Terry Guo <terry.guo@arm.com>
* config/arm/types.md (alu_reg): Replaced by alu_sreg and alu_dsp_reg.
diff --git a/gcc/config/aarch64/arm_neon.h b/gcc/config/aarch64/arm_neon.h
index 83ac5e9..a009692 100644
--- a/gcc/config/aarch64/arm_neon.h
+++ b/gcc/config/aarch64/arm_neon.h
@@ -6729,7 +6729,7 @@ vmla_u32 (uint32x2_t a, uint32x2_t b, uint32x2_t c)
#define vmlal_high_lane_s16(a, b, c, d) \
__extension__ \
({ \
- int16x8_t c_ = (c); \
+ int16x4_t c_ = (c); \
int16x8_t b_ = (b); \
int32x4_t a_ = (a); \
int32x4_t result; \
@@ -6743,7 +6743,7 @@ vmla_u32 (uint32x2_t a, uint32x2_t b, uint32x2_t c)
#define vmlal_high_lane_s32(a, b, c, d) \
__extension__ \
({ \
- int32x4_t c_ = (c); \
+ int32x2_t c_ = (c); \
int32x4_t b_ = (b); \
int64x2_t a_ = (a); \
int64x2_t result; \
@@ -6757,7 +6757,7 @@ vmla_u32 (uint32x2_t a, uint32x2_t b, uint32x2_t c)
#define vmlal_high_lane_u16(a, b, c, d) \
__extension__ \
({ \
- uint16x8_t c_ = (c); \
+ uint16x4_t c_ = (c); \
uint16x8_t b_ = (b); \
uint32x4_t a_ = (a); \
uint32x4_t result; \
@@ -6771,7 +6771,7 @@ vmla_u32 (uint32x2_t a, uint32x2_t b, uint32x2_t c)
#define vmlal_high_lane_u32(a, b, c, d) \
__extension__ \
({ \
- uint32x4_t c_ = (c); \
+ uint32x2_t c_ = (c); \
uint32x4_t b_ = (b); \
uint64x2_t a_ = (a); \
uint64x2_t result; \
@@ -7417,7 +7417,7 @@ vmls_u32 (uint32x2_t a, uint32x2_t b, uint32x2_t c)
#define vmlsl_high_lane_s16(a, b, c, d) \
__extension__ \
({ \
- int16x8_t c_ = (c); \
+ int16x4_t c_ = (c); \
int16x8_t b_ = (b); \
int32x4_t a_ = (a); \
int32x4_t result; \
@@ -7431,7 +7431,7 @@ vmls_u32 (uint32x2_t a, uint32x2_t b, uint32x2_t c)
#define vmlsl_high_lane_s32(a, b, c, d) \
__extension__ \
({ \
- int32x4_t c_ = (c); \
+ int32x2_t c_ = (c); \
int32x4_t b_ = (b); \
int64x2_t a_ = (a); \
int64x2_t result; \
@@ -7445,7 +7445,7 @@ vmls_u32 (uint32x2_t a, uint32x2_t b, uint32x2_t c)
#define vmlsl_high_lane_u16(a, b, c, d) \
__extension__ \
({ \
- uint16x8_t c_ = (c); \
+ uint16x4_t c_ = (c); \
uint16x8_t b_ = (b); \
uint32x4_t a_ = (a); \
uint32x4_t result; \
@@ -7459,7 +7459,7 @@ vmls_u32 (uint32x2_t a, uint32x2_t b, uint32x2_t c)
#define vmlsl_high_lane_u32(a, b, c, d) \
__extension__ \
({ \
- uint32x4_t c_ = (c); \
+ uint32x2_t c_ = (c); \
uint32x4_t b_ = (b); \
uint64x2_t a_ = (a); \
uint64x2_t result; \