From b405370260e7f244876ab88241d003fa8328b58d Mon Sep 17 00:00:00 2001 From: Aldy Hernandez Date: Mon, 10 Mar 2003 18:46:35 +0000 Subject: [PATCH] spe.h: Define __ev64_*64__ to use single element vectors. 2003-03-10 Aldy Hernandez * config/rs6000/spe.h: Define __ev64_*64__ to use single element vectors. (__ev_convert_u64): Remove macro. Define as inline. (__ev_convert_s64): Same. From-SVN: r64104 --- gcc/ChangeLog | 7 +++++++ gcc/config/rs6000/spe.h | 17 +++++++++++++---- 2 files changed, 20 insertions(+), 4 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 0dbb59141e4..f49c3d8960d 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2003-03-10 Aldy Hernandez + + * config/rs6000/spe.h: Define __ev64_*64__ to use single element + vectors. + (__ev_convert_u64): Remove macro. Define as inline. + (__ev_convert_s64): Same. + 2003-03-10 Aldy Hernandez * config/rs6000/rs6000.h (DWARF_FRAME_REGISTERS): Define. diff --git a/gcc/config/rs6000/spe.h b/gcc/config/rs6000/spe.h index 18fb3382013..b15dac5a38b 100644 --- a/gcc/config/rs6000/spe.h +++ b/gcc/config/rs6000/spe.h @@ -42,8 +42,8 @@ typedef short __vector __ev64_s16__; typedef unsigned short __vector __ev64_u16__; typedef int __vector __ev64_s32__; typedef unsigned __vector __ev64_u32__; -typedef long long __ev64_s64__; -typedef unsigned long long __ev64_u64__; +typedef long long __vector __ev64_s64__; +typedef unsigned long long __vector __ev64_u64__; typedef float __vector __ev64_fs__; typedef int __vector __ev64_opaque__; @@ -651,8 +651,17 @@ __ev_create_u64 (uint64_t a) return u.v; } -#define __ev_convert_u64(a) ((uint64_t) (a)) -#define __ev_convert_s64(a) ((int64_t) (a)) +static inline uint64_t +__ev_convert_u64 (__ev64_opaque__ a) +{ + return (uint64_t) a; +} + +static inline int64_t +__ev_convert_s64 (__ev64_opaque__ a) +{ + return (int64_t) a; +} /* __ev_get_* functions. */ -- 2.30.2