FFmpeg
Loading...
Searching...
No Matches
h264chroma_template.c File Reference

Go to the source code of this file.

Macros

#define CHROMA_MC8_ALTIVEC_CORE(BIAS1, BIAS2)
 
#define CHROMA_MC8_ALTIVEC_CORE_SIMPLE
 
#define noop(a)
 
#define add28(a)
 
#define GET_VSRC1(vs0, off, b, perm0, s)
 
#define GET_VSRC(vs0, vs1, off, b, perm0, perm1, s)
 

Macro Definition Documentation

◆ CHROMA_MC8_ALTIVEC_CORE

#define CHROMA_MC8_ALTIVEC_CORE ( BIAS1,
BIAS2 )
Value:
vsrc2ssH = (vec_s16)VEC_MERGEH(zero_u8v,(vec_u8)vsrc2uc);\
vsrc3ssH = (vec_s16)VEC_MERGEH(zero_u8v,(vec_u8)vsrc3uc);\
\
psum = vec_mladd(vA, vsrc0ssH, BIAS1);\
psum = vec_mladd(vB, vsrc1ssH, psum);\
psum = vec_mladd(vC, vsrc2ssH, psum);\
psum = vec_mladd(vD, vsrc3ssH, psum);\
psum = BIAS2(psum);\
psum = vec_sr(psum, v6us);\
\
vdst = vec_ld(0, dst);\
ppsum = (vec_u8)vec_pack(psum, psum);\
vfdst = vec_perm(vdst, ppsum, fperm);\
\
OP_U8_ALTIVEC(fsum, vfdst, vdst);\
\
vec_st(fsum, 0, dst);\
\
vsrc0ssH = vsrc2ssH;\
vsrc1ssH = vsrc3ssH;\
\
dst += stride;\
src += stride;
uint8_t ptrdiff_t const uint8_t ptrdiff_t int intptr_t intptr_t int int16_t * dst
Definition dsp.h:87
#define stride
#define src
Definition vp8dsp.c:248
#define vec_s16
#define vec_u8
#define zero_u8v

Definition at line 26 of file h264chroma_template.c.

◆ CHROMA_MC8_ALTIVEC_CORE_SIMPLE

#define CHROMA_MC8_ALTIVEC_CORE_SIMPLE
Value:
\
vsrc0ssH = (vec_s16)VEC_MERGEH(zero_u8v,(vec_u8)vsrc0uc);\
vsrc1ssH = (vec_s16)VEC_MERGEH(zero_u8v,(vec_u8)vsrc1uc);\
\
psum = vec_mladd(vA, vsrc0ssH, v32ss);\
psum = vec_mladd(vE, vsrc1ssH, psum);\
psum = vec_sr(psum, v6us);\
\
vdst = vec_ld(0, dst);\
ppsum = (vec_u8)vec_pack(psum, psum);\
vfdst = vec_perm(vdst, ppsum, fperm);\
\
OP_U8_ALTIVEC(fsum, vfdst, vdst);\
\
vec_st(fsum, 0, dst);\
\
dst += stride;\
src += stride;

Definition at line 51 of file h264chroma_template.c.

◆ noop

#define noop ( a)
Value:
int a

Definition at line 71 of file h264chroma_template.c.

Referenced by ff_sws_op_list_optimize().

◆ add28

#define add28 ( a)
Value:
vec_add(v28ss, a)

Definition at line 72 of file h264chroma_template.c.

◆ GET_VSRC1

#define GET_VSRC1 ( vs0,
off,
b,
perm0,
s )
Value:
{ \
vs0 = vec_vsx_ld(off, s); \
}
#define s(width, name)
Definition cbs_vp9.c:198

Definition at line 102 of file h264chroma_template.c.

◆ GET_VSRC

#define GET_VSRC ( vs0,
vs1,
off,
b,
perm0,
perm1,
s )
Value:
{ \
vs0 = vec_vsx_ld(off, s); \
vs1 = vec_vsx_ld(off + 1, s); \
}

Definition at line 105 of file h264chroma_template.c.