diff options
| -rw-r--r-- | gcc/ChangeLog | 7 | ||||
| -rw-r--r-- | gcc/config/rs6000/spe.h | 17 |
2 files changed, 20 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 0dbb591..f49c3d8 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,12 @@ 2003-03-10 Aldy Hernandez <aldyh@redhat.com> + * 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 <aldyh@redhat.com> + * config/rs6000/rs6000.h (DWARF_FRAME_REGISTERS): Define. (rs6000_stack_t): Add spe_64bit_regs_used. diff --git a/gcc/config/rs6000/spe.h b/gcc/config/rs6000/spe.h index 18fb338..b15dac5 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. */ |
