mirror of
https://github.com/xenia-project/FFmpeg.git
synced 2024-11-24 12:09:55 +00:00
Merge commit '0361e4dcb4d394c88c33364415a3b8fe315b67d1'
* commit '0361e4dcb4d394c88c33364415a3b8fe315b67d1': h264_qpel: x86: Move function with only one instance out of template macro Note: warning is present with clang. Merged-by: Clément Bœsch <cboesch@gopro.com>
This commit is contained in:
commit
1ea0df14c3
@ -71,6 +71,17 @@ void ff_ ## OPNAME ## _pixels8_l2_shift5_mmxext(uint8_t *dst, const int16_t *src
|
||||
DEF_QPEL(avg)
|
||||
DEF_QPEL(put)
|
||||
|
||||
static av_always_inline void ff_put_h264_qpel8or16_hv1_lowpass_mmxext(int16_t *tmp, const uint8_t *src, int tmpStride, int srcStride, int size)
|
||||
{
|
||||
int w = (size + 8) >> 2;
|
||||
src -= 2 * srcStride + 2;
|
||||
while (w--) {
|
||||
ff_put_h264_qpel8or16_hv1_lowpass_op_mmxext(src, tmp, srcStride, size);
|
||||
tmp += 4;
|
||||
src += 4;
|
||||
}
|
||||
}
|
||||
|
||||
#define QPEL_H264(OPNAME, OP, MMX)\
|
||||
static av_always_inline void ff_ ## OPNAME ## h264_qpel4_hv_lowpass_ ## MMX(uint8_t *dst, int16_t *tmp, const uint8_t *src, int dstStride, int tmpStride, int srcStride){\
|
||||
int w=3;\
|
||||
@ -91,15 +102,6 @@ static av_always_inline void ff_ ## OPNAME ## h264_qpel8or16_v_lowpass_ ## MMX(u
|
||||
dst += 4;\
|
||||
ff_ ## OPNAME ## h264_qpel8or16_v_lowpass_op_mmxext(dst, src, dstStride, srcStride, h);\
|
||||
}\
|
||||
static av_always_inline void ff_ ## OPNAME ## h264_qpel8or16_hv1_lowpass_ ## MMX(int16_t *tmp, const uint8_t *src, int tmpStride, int srcStride, int size){\
|
||||
int w = (size+8)>>2;\
|
||||
src -= 2*srcStride+2;\
|
||||
while(w--){\
|
||||
ff_ ## OPNAME ## h264_qpel8or16_hv1_lowpass_op_mmxext(src, tmp, srcStride, size);\
|
||||
tmp += 4;\
|
||||
src += 4;\
|
||||
}\
|
||||
}\
|
||||
static av_always_inline void ff_ ## OPNAME ## h264_qpel8or16_hv2_lowpass_ ## MMX(uint8_t *dst, int16_t *tmp, int dstStride, int tmpStride, int size){\
|
||||
int w = size>>4;\
|
||||
do{\
|
||||
|
Loading…
Reference in New Issue
Block a user