diff options
Diffstat (limited to 'libavutil/ppc/util_altivec.h')
-rw-r--r-- | libavutil/ppc/util_altivec.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/libavutil/ppc/util_altivec.h b/libavutil/ppc/util_altivec.h index 0db58730fe..5527740010 100644 --- a/libavutil/ppc/util_altivec.h +++ b/libavutil/ppc/util_altivec.h @@ -162,4 +162,16 @@ static inline vec_u8 load_with_perm_vec(int offset, const uint8_t *src, vec_u8 p #endif /* HAVE_ALTIVEC */ +#if HAVE_VSX +#if HAVE_BIGENDIAN +#define vsx_ld_u8_s16(off, p) \ + ((vec_s16)vec_mergeh((vec_u8)vec_splat_u8(0), \ + (vec_u8)vec_vsx_ld((off), (p)))) +#else +#define vsx_ld_u8_s16(off, p) \ + ((vec_s16)vec_mergeh((vec_u8)vec_vsx_ld((off), (p)), \ + (vec_u8)vec_splat_u8(0))) +#endif /* HAVE_BIGENDIAN */ +#endif /* HAVE_VSX */ + #endif /* AVUTIL_PPC_UTIL_ALTIVEC_H */ |