mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
lsws/ppc/yuv2rgb_altivec: Fix build in non-VSX environments
Add inline function for vec_xl if VSX is not supported. vec_xl intrinsic is only available on POWER 7 or higher. Fixes ticket #8750. Signed-off-by: Andriy Gelman <andriy.gelman@gmail.com>
This commit is contained in:
parent
7b30dad3a6
commit
e7f53d6ac9
@ -284,6 +284,16 @@ static inline void cvtyuvtoRGB(SwsContext *c, vector signed short Y,
|
|||||||
* ------------------------------------------------------------------------------
|
* ------------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
|
||||||
|
#if !HAVE_VSX
|
||||||
|
static inline vector unsigned char vec_xl(signed long long offset, const ubyte *addr)
|
||||||
|
{
|
||||||
|
const vector unsigned char *v_addr = (const vector unsigned char *) (addr + offset);
|
||||||
|
vector unsigned char align_perm = vec_lvsl(offset, addr);
|
||||||
|
|
||||||
|
return (vector unsigned char) vec_perm(v_addr[0], v_addr[1], align_perm);
|
||||||
|
}
|
||||||
|
#endif /* !HAVE_VSX */
|
||||||
|
|
||||||
#define DEFCSP420_CVT(name, out_pixels) \
|
#define DEFCSP420_CVT(name, out_pixels) \
|
||||||
static int altivec_ ## name(SwsContext *c, const unsigned char **in, \
|
static int altivec_ ## name(SwsContext *c, const unsigned char **in, \
|
||||||
int *instrides, int srcSliceY, int srcSliceH, \
|
int *instrides, int srcSliceY, int srcSliceH, \
|
||||||
|
Loading…
Reference in New Issue
Block a user