Commit dad7f155 authored by Christophe Gisquet's avatar Christophe Gisquet Committed by Michael Niedermayer

hevcdsp: remove more instances of compile-time-fixed parameters

Signed-off-by: 's avatarMichael Niedermayer <michaelni@gmx.at>
parent d4f44b66
...@@ -1390,10 +1390,10 @@ static void luma_mc_uni(HEVCContext *s, uint8_t *dst, ptrdiff_t dststride, ...@@ -1390,10 +1390,10 @@ static void luma_mc_uni(HEVCContext *s, uint8_t *dst, ptrdiff_t dststride,
s->hevcdsp.put_hevc_qpel[idx][!!my0][!!mx0](tmp, src0, src0stride, s->hevcdsp.put_hevc_qpel[idx][!!my0][!!mx0](tmp, src0, src0stride,
block_h, mx0, my0, block_w); block_h, mx0, my0, block_w);
if (!weight_flag) if (!weight_flag)
s->hevcdsp.put_hevc_qpel_bi[idx][!!my1][!!mx1](dst, dststride, src1, src1stride, tmp, MAX_PB_SIZE, s->hevcdsp.put_hevc_qpel_bi[idx][!!my1][!!mx1](dst, dststride, src1, src1stride, tmp,
block_h, mx1, my1, block_w); block_h, mx1, my1, block_w);
else else
s->hevcdsp.put_hevc_qpel_bi_w[idx][!!my1][!!mx1](dst, dststride, src1, src1stride, tmp, MAX_PB_SIZE, s->hevcdsp.put_hevc_qpel_bi_w[idx][!!my1][!!mx1](dst, dststride, src1, src1stride, tmp,
block_h, s->sh.luma_log2_weight_denom, block_h, s->sh.luma_log2_weight_denom,
s->sh.luma_weight_l0[current_mv->ref_idx[0]], s->sh.luma_weight_l0[current_mv->ref_idx[0]],
s->sh.luma_weight_l1[current_mv->ref_idx[1]], s->sh.luma_weight_l1[current_mv->ref_idx[1]],
...@@ -1489,7 +1489,6 @@ static void chroma_mc_bi(HEVCContext *s, uint8_t *dst0, ptrdiff_t dststride, AVF ...@@ -1489,7 +1489,6 @@ static void chroma_mc_bi(HEVCContext *s, uint8_t *dst0, ptrdiff_t dststride, AVF
int x_off, int y_off, int block_w, int block_h, struct MvField *current_mv, int cidx) int x_off, int y_off, int block_w, int block_h, struct MvField *current_mv, int cidx)
{ {
DECLARE_ALIGNED(16, int16_t, tmp [MAX_PB_SIZE * MAX_PB_SIZE]); DECLARE_ALIGNED(16, int16_t, tmp [MAX_PB_SIZE * MAX_PB_SIZE]);
int tmpstride = MAX_PB_SIZE;
HEVCLocalContext *lc = s->HEVClc; HEVCLocalContext *lc = s->HEVClc;
uint8_t *src1 = ref0->data[cidx+1]; uint8_t *src1 = ref0->data[cidx+1];
uint8_t *src2 = ref1->data[cidx+1]; uint8_t *src2 = ref1->data[cidx+1];
...@@ -1563,11 +1562,11 @@ static void chroma_mc_bi(HEVCContext *s, uint8_t *dst0, ptrdiff_t dststride, AVF ...@@ -1563,11 +1562,11 @@ static void chroma_mc_bi(HEVCContext *s, uint8_t *dst0, ptrdiff_t dststride, AVF
block_h, _mx0, _my0, block_w); block_h, _mx0, _my0, block_w);
if (!weight_flag) if (!weight_flag)
s->hevcdsp.put_hevc_epel_bi[idx][!!my1][!!mx1](dst0, s->frame->linesize[cidx+1], s->hevcdsp.put_hevc_epel_bi[idx][!!my1][!!mx1](dst0, s->frame->linesize[cidx+1],
src2, src2stride, tmp, tmpstride, src2, src2stride, tmp,
block_h, _mx1, _my1, block_w); block_h, _mx1, _my1, block_w);
else else
s->hevcdsp.put_hevc_epel_bi_w[idx][!!my1][!!mx1](dst0, s->frame->linesize[cidx+1], s->hevcdsp.put_hevc_epel_bi_w[idx][!!my1][!!mx1](dst0, s->frame->linesize[cidx+1],
src2, src2stride, tmp, tmpstride, src2, src2stride, tmp,
block_h, block_h,
s->sh.chroma_log2_weight_denom, s->sh.chroma_log2_weight_denom,
s->sh.chroma_weight_l0[current_mv->ref_idx[0]][cidx], s->sh.chroma_weight_l0[current_mv->ref_idx[0]][cidx],
......
...@@ -75,10 +75,10 @@ typedef struct HEVCDSPContext { ...@@ -75,10 +75,10 @@ typedef struct HEVCDSPContext {
int height, int denom, int wx, int ox, intptr_t mx, intptr_t my, int width); int height, int denom, int wx, int ox, intptr_t mx, intptr_t my, int width);
void (*put_hevc_qpel_bi[10][2][2])(uint8_t *dst, ptrdiff_t dststride, uint8_t *_src, ptrdiff_t _srcstride, void (*put_hevc_qpel_bi[10][2][2])(uint8_t *dst, ptrdiff_t dststride, uint8_t *_src, ptrdiff_t _srcstride,
int16_t *src2, ptrdiff_t src2stride, int16_t *src2,
int height, intptr_t mx, intptr_t my, int width); int height, intptr_t mx, intptr_t my, int width);
void (*put_hevc_qpel_bi_w[10][2][2])(uint8_t *dst, ptrdiff_t dststride, uint8_t *_src, ptrdiff_t _srcstride, void (*put_hevc_qpel_bi_w[10][2][2])(uint8_t *dst, ptrdiff_t dststride, uint8_t *_src, ptrdiff_t _srcstride,
int16_t *src2, ptrdiff_t src2stride, int16_t *src2,
int height, int denom, int wx0, int wx1, int height, int denom, int wx0, int wx1,
int ox0, int ox1, intptr_t mx, intptr_t my, int width); int ox0, int ox1, intptr_t mx, intptr_t my, int width);
void (*put_hevc_epel[10][2][2])(int16_t *dst, uint8_t *src, ptrdiff_t srcstride, void (*put_hevc_epel[10][2][2])(int16_t *dst, uint8_t *src, ptrdiff_t srcstride,
...@@ -89,10 +89,10 @@ typedef struct HEVCDSPContext { ...@@ -89,10 +89,10 @@ typedef struct HEVCDSPContext {
void (*put_hevc_epel_uni_w[10][2][2])(uint8_t *_dst, ptrdiff_t _dststride, uint8_t *_src, ptrdiff_t _srcstride, void (*put_hevc_epel_uni_w[10][2][2])(uint8_t *_dst, ptrdiff_t _dststride, uint8_t *_src, ptrdiff_t _srcstride,
int height, int denom, int wx, int ox, intptr_t mx, intptr_t my, int width); int height, int denom, int wx, int ox, intptr_t mx, intptr_t my, int width);
void (*put_hevc_epel_bi[10][2][2])(uint8_t *dst, ptrdiff_t dststride, uint8_t *_src, ptrdiff_t _srcstride, void (*put_hevc_epel_bi[10][2][2])(uint8_t *dst, ptrdiff_t dststride, uint8_t *_src, ptrdiff_t _srcstride,
int16_t *src2, ptrdiff_t src2stride, int16_t *src2,
int height, intptr_t mx, intptr_t my, int width); int height, intptr_t mx, intptr_t my, int width);
void (*put_hevc_epel_bi_w[10][2][2])(uint8_t *dst, ptrdiff_t dststride, uint8_t *_src, ptrdiff_t _srcstride, void (*put_hevc_epel_bi_w[10][2][2])(uint8_t *dst, ptrdiff_t dststride, uint8_t *_src, ptrdiff_t _srcstride,
int16_t *src2, ptrdiff_t src2stride, int16_t *src2,
int height, int denom, int wx0, int ox0, int wx1, int height, int denom, int wx0, int ox0, int wx1,
int ox1, intptr_t mx, intptr_t my, int width); int ox1, intptr_t mx, intptr_t my, int width);
......
...@@ -576,7 +576,7 @@ static void FUNC(put_hevc_pel_uni_pixels)(uint8_t *_dst, ptrdiff_t _dststride, u ...@@ -576,7 +576,7 @@ static void FUNC(put_hevc_pel_uni_pixels)(uint8_t *_dst, ptrdiff_t _dststride, u
} }
static void FUNC(put_hevc_pel_bi_pixels)(uint8_t *_dst, ptrdiff_t _dststride, uint8_t *_src, ptrdiff_t _srcstride, static void FUNC(put_hevc_pel_bi_pixels)(uint8_t *_dst, ptrdiff_t _dststride, uint8_t *_src, ptrdiff_t _srcstride,
int16_t *src2, ptrdiff_t src2stride, int16_t *src2,
int height, intptr_t mx, intptr_t my, int width) int height, intptr_t mx, intptr_t my, int width)
{ {
int x, y; int x, y;
...@@ -597,7 +597,7 @@ static void FUNC(put_hevc_pel_bi_pixels)(uint8_t *_dst, ptrdiff_t _dststride, ui ...@@ -597,7 +597,7 @@ static void FUNC(put_hevc_pel_bi_pixels)(uint8_t *_dst, ptrdiff_t _dststride, ui
dst[x] = av_clip_pixel(((src[x] << (14 - BIT_DEPTH)) + src2[x] + offset) >> shift); dst[x] = av_clip_pixel(((src[x] << (14 - BIT_DEPTH)) + src2[x] + offset) >> shift);
src += srcstride; src += srcstride;
dst += dststride; dst += dststride;
src2 += src2stride; src2 += MAX_PB_SIZE;
} }
} }
...@@ -626,7 +626,7 @@ static void FUNC(put_hevc_pel_uni_w_pixels)(uint8_t *_dst, ptrdiff_t _dststride, ...@@ -626,7 +626,7 @@ static void FUNC(put_hevc_pel_uni_w_pixels)(uint8_t *_dst, ptrdiff_t _dststride,
} }
static void FUNC(put_hevc_pel_bi_w_pixels)(uint8_t *_dst, ptrdiff_t _dststride, uint8_t *_src, ptrdiff_t _srcstride, static void FUNC(put_hevc_pel_bi_w_pixels)(uint8_t *_dst, ptrdiff_t _dststride, uint8_t *_src, ptrdiff_t _srcstride,
int16_t *src2, ptrdiff_t src2stride, int16_t *src2,
int height, int denom, int wx0, int wx1, int height, int denom, int wx0, int wx1,
int ox0, int ox1, intptr_t mx, intptr_t my, int width) int ox0, int ox1, intptr_t mx, intptr_t my, int width)
{ {
...@@ -647,7 +647,7 @@ static void FUNC(put_hevc_pel_bi_w_pixels)(uint8_t *_dst, ptrdiff_t _dststride, ...@@ -647,7 +647,7 @@ static void FUNC(put_hevc_pel_bi_w_pixels)(uint8_t *_dst, ptrdiff_t _dststride,
} }
src += srcstride; src += srcstride;
dst += dststride; dst += dststride;
src2 += src2stride; src2 += MAX_PB_SIZE;
} }
} }
...@@ -755,7 +755,7 @@ static void FUNC(put_hevc_qpel_uni_h)(uint8_t *_dst, ptrdiff_t _dststride, ...@@ -755,7 +755,7 @@ static void FUNC(put_hevc_qpel_uni_h)(uint8_t *_dst, ptrdiff_t _dststride,
} }
static void FUNC(put_hevc_qpel_bi_h)(uint8_t *_dst, ptrdiff_t _dststride, uint8_t *_src, ptrdiff_t _srcstride, static void FUNC(put_hevc_qpel_bi_h)(uint8_t *_dst, ptrdiff_t _dststride, uint8_t *_src, ptrdiff_t _srcstride,
int16_t *src2, ptrdiff_t src2stride, int16_t *src2,
int height, intptr_t mx, intptr_t my, int width) int height, intptr_t mx, intptr_t my, int width)
{ {
int x, y; int x, y;
...@@ -778,7 +778,7 @@ static void FUNC(put_hevc_qpel_bi_h)(uint8_t *_dst, ptrdiff_t _dststride, uint8_ ...@@ -778,7 +778,7 @@ static void FUNC(put_hevc_qpel_bi_h)(uint8_t *_dst, ptrdiff_t _dststride, uint8_
dst[x] = av_clip_pixel(((QPEL_FILTER(src, 1) >> (BIT_DEPTH - 8)) + src2[x] + offset) >> shift); dst[x] = av_clip_pixel(((QPEL_FILTER(src, 1) >> (BIT_DEPTH - 8)) + src2[x] + offset) >> shift);
src += srcstride; src += srcstride;
dst += dststride; dst += dststride;
src2 += src2stride; src2 += MAX_PB_SIZE;
} }
} }
...@@ -810,7 +810,7 @@ static void FUNC(put_hevc_qpel_uni_v)(uint8_t *_dst, ptrdiff_t _dststride, ...@@ -810,7 +810,7 @@ static void FUNC(put_hevc_qpel_uni_v)(uint8_t *_dst, ptrdiff_t _dststride,
static void FUNC(put_hevc_qpel_bi_v)(uint8_t *_dst, ptrdiff_t _dststride, uint8_t *_src, ptrdiff_t _srcstride, static void FUNC(put_hevc_qpel_bi_v)(uint8_t *_dst, ptrdiff_t _dststride, uint8_t *_src, ptrdiff_t _srcstride,
int16_t *src2, ptrdiff_t src2stride, int16_t *src2,
int height, intptr_t mx, intptr_t my, int width) int height, intptr_t mx, intptr_t my, int width)
{ {
int x, y; int x, y;
...@@ -833,7 +833,7 @@ static void FUNC(put_hevc_qpel_bi_v)(uint8_t *_dst, ptrdiff_t _dststride, uint8_ ...@@ -833,7 +833,7 @@ static void FUNC(put_hevc_qpel_bi_v)(uint8_t *_dst, ptrdiff_t _dststride, uint8_
dst[x] = av_clip_pixel(((QPEL_FILTER(src, srcstride) >> (BIT_DEPTH - 8)) + src2[x] + offset) >> shift); dst[x] = av_clip_pixel(((QPEL_FILTER(src, srcstride) >> (BIT_DEPTH - 8)) + src2[x] + offset) >> shift);
src += srcstride; src += srcstride;
dst += dststride; dst += dststride;
src2 += src2stride; src2 += MAX_PB_SIZE;
} }
} }
...@@ -878,7 +878,7 @@ static void FUNC(put_hevc_qpel_uni_hv)(uint8_t *_dst, ptrdiff_t _dststride, ...@@ -878,7 +878,7 @@ static void FUNC(put_hevc_qpel_uni_hv)(uint8_t *_dst, ptrdiff_t _dststride,
} }
static void FUNC(put_hevc_qpel_bi_hv)(uint8_t *_dst, ptrdiff_t _dststride, uint8_t *_src, ptrdiff_t _srcstride, static void FUNC(put_hevc_qpel_bi_hv)(uint8_t *_dst, ptrdiff_t _dststride, uint8_t *_src, ptrdiff_t _srcstride,
int16_t *src2, ptrdiff_t src2stride, int16_t *src2,
int height, intptr_t mx, intptr_t my, int width) int height, intptr_t mx, intptr_t my, int width)
{ {
int x, y; int x, y;
...@@ -913,7 +913,7 @@ static void FUNC(put_hevc_qpel_bi_hv)(uint8_t *_dst, ptrdiff_t _dststride, uint8 ...@@ -913,7 +913,7 @@ static void FUNC(put_hevc_qpel_bi_hv)(uint8_t *_dst, ptrdiff_t _dststride, uint8
dst[x] = av_clip_pixel(((QPEL_FILTER(tmp, MAX_PB_SIZE) >> 6) + src2[x] + offset) >> shift); dst[x] = av_clip_pixel(((QPEL_FILTER(tmp, MAX_PB_SIZE) >> 6) + src2[x] + offset) >> shift);
tmp += MAX_PB_SIZE; tmp += MAX_PB_SIZE;
dst += dststride; dst += dststride;
src2 += src2stride; src2 += MAX_PB_SIZE;
} }
} }
...@@ -945,7 +945,7 @@ static void FUNC(put_hevc_qpel_uni_w_h)(uint8_t *_dst, ptrdiff_t _dststride, ...@@ -945,7 +945,7 @@ static void FUNC(put_hevc_qpel_uni_w_h)(uint8_t *_dst, ptrdiff_t _dststride,
} }
static void FUNC(put_hevc_qpel_bi_w_h)(uint8_t *_dst, ptrdiff_t _dststride, uint8_t *_src, ptrdiff_t _srcstride, static void FUNC(put_hevc_qpel_bi_w_h)(uint8_t *_dst, ptrdiff_t _dststride, uint8_t *_src, ptrdiff_t _srcstride,
int16_t *src2, ptrdiff_t src2stride, int16_t *src2,
int height, int denom, int wx0, int wx1, int height, int denom, int wx0, int wx1,
int ox0, int ox1, intptr_t mx, intptr_t my, int width) int ox0, int ox1, intptr_t mx, intptr_t my, int width)
{ {
...@@ -968,7 +968,7 @@ static void FUNC(put_hevc_qpel_bi_w_h)(uint8_t *_dst, ptrdiff_t _dststride, uint ...@@ -968,7 +968,7 @@ static void FUNC(put_hevc_qpel_bi_w_h)(uint8_t *_dst, ptrdiff_t _dststride, uint
((ox0 + ox1 + 1) << log2Wd)) >> (log2Wd + 1)); ((ox0 + ox1 + 1) << log2Wd)) >> (log2Wd + 1));
src += srcstride; src += srcstride;
dst += dststride; dst += dststride;
src2 += src2stride; src2 += MAX_PB_SIZE;
} }
} }
...@@ -1000,7 +1000,7 @@ static void FUNC(put_hevc_qpel_uni_w_v)(uint8_t *_dst, ptrdiff_t _dststride, ...@@ -1000,7 +1000,7 @@ static void FUNC(put_hevc_qpel_uni_w_v)(uint8_t *_dst, ptrdiff_t _dststride,
} }
static void FUNC(put_hevc_qpel_bi_w_v)(uint8_t *_dst, ptrdiff_t _dststride, uint8_t *_src, ptrdiff_t _srcstride, static void FUNC(put_hevc_qpel_bi_w_v)(uint8_t *_dst, ptrdiff_t _dststride, uint8_t *_src, ptrdiff_t _srcstride,
int16_t *src2, ptrdiff_t src2stride, int16_t *src2,
int height, int denom, int wx0, int wx1, int height, int denom, int wx0, int wx1,
int ox0, int ox1, intptr_t mx, intptr_t my, int width) int ox0, int ox1, intptr_t mx, intptr_t my, int width)
{ {
...@@ -1023,7 +1023,7 @@ static void FUNC(put_hevc_qpel_bi_w_v)(uint8_t *_dst, ptrdiff_t _dststride, uint ...@@ -1023,7 +1023,7 @@ static void FUNC(put_hevc_qpel_bi_w_v)(uint8_t *_dst, ptrdiff_t _dststride, uint
((ox0 + ox1 + 1) << log2Wd)) >> (log2Wd + 1)); ((ox0 + ox1 + 1) << log2Wd)) >> (log2Wd + 1));
src += srcstride; src += srcstride;
dst += dststride; dst += dststride;
src2 += src2stride; src2 += MAX_PB_SIZE;
} }
} }
...@@ -1069,7 +1069,7 @@ static void FUNC(put_hevc_qpel_uni_w_hv)(uint8_t *_dst, ptrdiff_t _dststride, ...@@ -1069,7 +1069,7 @@ static void FUNC(put_hevc_qpel_uni_w_hv)(uint8_t *_dst, ptrdiff_t _dststride,
} }
static void FUNC(put_hevc_qpel_bi_w_hv)(uint8_t *_dst, ptrdiff_t _dststride, uint8_t *_src, ptrdiff_t _srcstride, static void FUNC(put_hevc_qpel_bi_w_hv)(uint8_t *_dst, ptrdiff_t _dststride, uint8_t *_src, ptrdiff_t _srcstride,
int16_t *src2, ptrdiff_t src2stride, int16_t *src2,
int height, int denom, int wx0, int wx1, int height, int denom, int wx0, int wx1,
int ox0, int ox1, intptr_t mx, intptr_t my, int width) int ox0, int ox1, intptr_t mx, intptr_t my, int width)
{ {
...@@ -1104,7 +1104,7 @@ static void FUNC(put_hevc_qpel_bi_w_hv)(uint8_t *_dst, ptrdiff_t _dststride, uin ...@@ -1104,7 +1104,7 @@ static void FUNC(put_hevc_qpel_bi_w_hv)(uint8_t *_dst, ptrdiff_t _dststride, uin
((ox0 + ox1 + 1) << log2Wd)) >> (log2Wd + 1)); ((ox0 + ox1 + 1) << log2Wd)) >> (log2Wd + 1));
tmp += MAX_PB_SIZE; tmp += MAX_PB_SIZE;
dst += dststride; dst += dststride;
src2 += src2stride; src2 += MAX_PB_SIZE;
} }
} }
...@@ -1206,7 +1206,7 @@ static void FUNC(put_hevc_epel_uni_h)(uint8_t *_dst, ptrdiff_t _dststride, uint8 ...@@ -1206,7 +1206,7 @@ static void FUNC(put_hevc_epel_uni_h)(uint8_t *_dst, ptrdiff_t _dststride, uint8
} }
static void FUNC(put_hevc_epel_bi_h)(uint8_t *_dst, ptrdiff_t _dststride, uint8_t *_src, ptrdiff_t _srcstride, static void FUNC(put_hevc_epel_bi_h)(uint8_t *_dst, ptrdiff_t _dststride, uint8_t *_src, ptrdiff_t _srcstride,
int16_t *src2, ptrdiff_t src2stride, int16_t *src2,
int height, intptr_t mx, intptr_t my, int width) int height, intptr_t mx, intptr_t my, int width)
{ {
int x, y; int x, y;
...@@ -1228,7 +1228,7 @@ static void FUNC(put_hevc_epel_bi_h)(uint8_t *_dst, ptrdiff_t _dststride, uint8_ ...@@ -1228,7 +1228,7 @@ static void FUNC(put_hevc_epel_bi_h)(uint8_t *_dst, ptrdiff_t _dststride, uint8_
} }
dst += dststride; dst += dststride;
src += srcstride; src += srcstride;
src2 += src2stride; src2 += MAX_PB_SIZE;
} }
} }
...@@ -1257,7 +1257,7 @@ static void FUNC(put_hevc_epel_uni_v)(uint8_t *_dst, ptrdiff_t _dststride, uint8 ...@@ -1257,7 +1257,7 @@ static void FUNC(put_hevc_epel_uni_v)(uint8_t *_dst, ptrdiff_t _dststride, uint8
} }
static void FUNC(put_hevc_epel_bi_v)(uint8_t *_dst, ptrdiff_t _dststride, uint8_t *_src, ptrdiff_t _srcstride, static void FUNC(put_hevc_epel_bi_v)(uint8_t *_dst, ptrdiff_t _dststride, uint8_t *_src, ptrdiff_t _srcstride,
int16_t *src2, ptrdiff_t src2stride, int16_t *src2,
int height, intptr_t mx, intptr_t my, int width) int height, intptr_t mx, intptr_t my, int width)
{ {
int x, y; int x, y;
...@@ -1278,7 +1278,7 @@ static void FUNC(put_hevc_epel_bi_v)(uint8_t *_dst, ptrdiff_t _dststride, uint8_ ...@@ -1278,7 +1278,7 @@ static void FUNC(put_hevc_epel_bi_v)(uint8_t *_dst, ptrdiff_t _dststride, uint8_
dst[x] = av_clip_pixel(((EPEL_FILTER(src, srcstride) >> (BIT_DEPTH - 8)) + src2[x] + offset) >> shift); dst[x] = av_clip_pixel(((EPEL_FILTER(src, srcstride) >> (BIT_DEPTH - 8)) + src2[x] + offset) >> shift);
dst += dststride; dst += dststride;
src += srcstride; src += srcstride;
src2 += src2stride; src2 += MAX_PB_SIZE;
} }
} }
...@@ -1321,7 +1321,7 @@ static void FUNC(put_hevc_epel_uni_hv)(uint8_t *_dst, ptrdiff_t _dststride, uint ...@@ -1321,7 +1321,7 @@ static void FUNC(put_hevc_epel_uni_hv)(uint8_t *_dst, ptrdiff_t _dststride, uint
} }
static void FUNC(put_hevc_epel_bi_hv)(uint8_t *_dst, ptrdiff_t _dststride, uint8_t *_src, ptrdiff_t _srcstride, static void FUNC(put_hevc_epel_bi_hv)(uint8_t *_dst, ptrdiff_t _dststride, uint8_t *_src, ptrdiff_t _srcstride,
int16_t *src2, ptrdiff_t src2stride, int16_t *src2,
int height, intptr_t mx, intptr_t my, int width) int height, intptr_t mx, intptr_t my, int width)
{ {
int x, y; int x, y;
...@@ -1356,7 +1356,7 @@ static void FUNC(put_hevc_epel_bi_hv)(uint8_t *_dst, ptrdiff_t _dststride, uint8 ...@@ -1356,7 +1356,7 @@ static void FUNC(put_hevc_epel_bi_hv)(uint8_t *_dst, ptrdiff_t _dststride, uint8
dst[x] = av_clip_pixel(((EPEL_FILTER(tmp, MAX_PB_SIZE) >> 6) + src2[x] + offset) >> shift); dst[x] = av_clip_pixel(((EPEL_FILTER(tmp, MAX_PB_SIZE) >> 6) + src2[x] + offset) >> shift);
tmp += MAX_PB_SIZE; tmp += MAX_PB_SIZE;
dst += dststride; dst += dststride;
src2 += src2stride; src2 += MAX_PB_SIZE;
} }
} }
...@@ -1387,7 +1387,7 @@ static void FUNC(put_hevc_epel_uni_w_h)(uint8_t *_dst, ptrdiff_t _dststride, uin ...@@ -1387,7 +1387,7 @@ static void FUNC(put_hevc_epel_uni_w_h)(uint8_t *_dst, ptrdiff_t _dststride, uin
} }
static void FUNC(put_hevc_epel_bi_w_h)(uint8_t *_dst, ptrdiff_t _dststride, uint8_t *_src, ptrdiff_t _srcstride, static void FUNC(put_hevc_epel_bi_w_h)(uint8_t *_dst, ptrdiff_t _dststride, uint8_t *_src, ptrdiff_t _srcstride,
int16_t *src2, ptrdiff_t src2stride, int16_t *src2,
int height, int denom, int wx0, int wx1, int height, int denom, int wx0, int wx1,
int ox0, int ox1, intptr_t mx, intptr_t my, int width) int ox0, int ox1, intptr_t mx, intptr_t my, int width)
{ {
...@@ -1408,7 +1408,7 @@ static void FUNC(put_hevc_epel_bi_w_h)(uint8_t *_dst, ptrdiff_t _dststride, uint ...@@ -1408,7 +1408,7 @@ static void FUNC(put_hevc_epel_bi_w_h)(uint8_t *_dst, ptrdiff_t _dststride, uint
((ox0 + ox1 + 1) << log2Wd)) >> (log2Wd + 1)); ((ox0 + ox1 + 1) << log2Wd)) >> (log2Wd + 1));
src += srcstride; src += srcstride;
dst += dststride; dst += dststride;
src2 += src2stride; src2 += MAX_PB_SIZE;
} }
} }
...@@ -1439,7 +1439,7 @@ static void FUNC(put_hevc_epel_uni_w_v)(uint8_t *_dst, ptrdiff_t _dststride, uin ...@@ -1439,7 +1439,7 @@ static void FUNC(put_hevc_epel_uni_w_v)(uint8_t *_dst, ptrdiff_t _dststride, uin
} }
static void FUNC(put_hevc_epel_bi_w_v)(uint8_t *_dst, ptrdiff_t _dststride, uint8_t *_src, ptrdiff_t _srcstride, static void FUNC(put_hevc_epel_bi_w_v)(uint8_t *_dst, ptrdiff_t _dststride, uint8_t *_src, ptrdiff_t _srcstride,
int16_t *src2, ptrdiff_t src2stride, int16_t *src2,
int height, int denom, int wx0, int wx1, int height, int denom, int wx0, int wx1,
int ox0, int ox1, intptr_t mx, intptr_t my, int width) int ox0, int ox1, intptr_t mx, intptr_t my, int width)
{ {
...@@ -1460,7 +1460,7 @@ static void FUNC(put_hevc_epel_bi_w_v)(uint8_t *_dst, ptrdiff_t _dststride, uint ...@@ -1460,7 +1460,7 @@ static void FUNC(put_hevc_epel_bi_w_v)(uint8_t *_dst, ptrdiff_t _dststride, uint
((ox0 + ox1 + 1) << log2Wd)) >> (log2Wd + 1)); ((ox0 + ox1 + 1) << log2Wd)) >> (log2Wd + 1));
src += srcstride; src += srcstride;
dst += dststride; dst += dststride;
src2 += src2stride; src2 += MAX_PB_SIZE;
} }
} }
...@@ -1504,7 +1504,7 @@ static void FUNC(put_hevc_epel_uni_w_hv)(uint8_t *_dst, ptrdiff_t _dststride, ui ...@@ -1504,7 +1504,7 @@ static void FUNC(put_hevc_epel_uni_w_hv)(uint8_t *_dst, ptrdiff_t _dststride, ui
} }
static void FUNC(put_hevc_epel_bi_w_hv)(uint8_t *_dst, ptrdiff_t _dststride, uint8_t *_src, ptrdiff_t _srcstride, static void FUNC(put_hevc_epel_bi_w_hv)(uint8_t *_dst, ptrdiff_t _dststride, uint8_t *_src, ptrdiff_t _srcstride,
int16_t *src2, ptrdiff_t src2stride, int16_t *src2,
int height, int denom, int wx0, int wx1, int height, int denom, int wx0, int wx1,
int ox0, int ox1, intptr_t mx, intptr_t my, int width) int ox0, int ox1, intptr_t mx, intptr_t my, int width)
{ {
...@@ -1539,7 +1539,7 @@ static void FUNC(put_hevc_epel_bi_w_hv)(uint8_t *_dst, ptrdiff_t _dststride, uin ...@@ -1539,7 +1539,7 @@ static void FUNC(put_hevc_epel_bi_w_hv)(uint8_t *_dst, ptrdiff_t _dststride, uin
((ox0 + ox1 + 1) << log2Wd)) >> (log2Wd + 1)); ((ox0 + ox1 + 1) << log2Wd)) >> (log2Wd + 1));
tmp += MAX_PB_SIZE; tmp += MAX_PB_SIZE;
dst += dststride; dst += dststride;
src2 += src2stride; src2 += MAX_PB_SIZE;
} }
}// line zero }// line zero
#define P3 pix[-4 * xstride] #define P3 pix[-4 * xstride]
......
...@@ -378,13 +378,9 @@ QPEL_TABLE 12, 4, w, sse4 ...@@ -378,13 +378,9 @@ QPEL_TABLE 12, 4, w, sse4
movdqa [%1], %2 movdqa [%1], %2
%endmacro %endmacro
%macro LOOP_END 4 %macro LOOP_END 3
%ifnum %2 add %1q, 2*MAX_PB_SIZE ; dst += dststride
add %1q, 2*%2 ; dst += dststride add %2q, %3q ; src += srcstride
%else
lea %1q, [%1q+2*%2q] ; dst += dststride
%endif
add %3q, %4q ; src += srcstride
dec heightd ; cmp height dec heightd ; cmp height
jnz .loop ; height loop jnz .loop ; height loop
%endmacro %endmacro
...@@ -554,7 +550,7 @@ cglobal hevc_put_hevc_pel_pixels%1_%2, 4, 4, 3, dst, src, srcstride,height ...@@ -554,7 +550,7 @@ cglobal hevc_put_hevc_pel_pixels%1_%2, 4, 4, 3, dst, src, srcstride,height
SIMPLE_LOAD %1, %2, srcq, m0 SIMPLE_LOAD %1, %2, srcq, m0
MC_PIXEL_COMPUTE %1, %2 MC_PIXEL_COMPUTE %1, %2
PEL_10STORE%1 dstq, m0, m1 PEL_10STORE%1 dstq, m0, m1
LOOP_END dst, MAX_PB_SIZE, src, srcstride LOOP_END dst, src, srcstride
RET RET
cglobal hevc_put_hevc_uni_pel_pixels%1_%2, 5, 5, 2, dst, dststride, src, srcstride,height cglobal hevc_put_hevc_uni_pel_pixels%1_%2, 5, 5, 2, dst, dststride, src, srcstride,height
...@@ -567,7 +563,7 @@ cglobal hevc_put_hevc_uni_pel_pixels%1_%2, 5, 5, 2, dst, dststride, src, srcstri ...@@ -567,7 +563,7 @@ cglobal hevc_put_hevc_uni_pel_pixels%1_%2, 5, 5, 2, dst, dststride, src, srcstri
jnz .loop ; height loop jnz .loop ; height loop
RET RET
cglobal hevc_put_hevc_bi_pel_pixels%1_%2, 7, 7, 6, dst, dststride, src, srcstride, src2, src2stride,height cglobal hevc_put_hevc_bi_pel_pixels%1_%2, 6, 6, 6, dst, dststride, src, srcstride, src2, height
pxor m2, m2 pxor m2, m2
movdqa m5, [pw_bi_%2] movdqa m5, [pw_bi_%2]
.loop .loop
...@@ -602,7 +598,7 @@ cglobal hevc_put_hevc_epel_h%1_%2, 5, 6, 6, dst, src, srcstride, height, mx, rfi ...@@ -602,7 +598,7 @@ cglobal hevc_put_hevc_epel_h%1_%2, 5, 6, 6, dst, src, srcstride, height, mx, rfi
EPEL_LOAD %2, srcq-%%stride, %%stride, %1 EPEL_LOAD %2, srcq-%%stride, %%stride, %1
EPEL_COMPUTE %2, %1, m4, m5 EPEL_COMPUTE %2, %1, m4, m5
PEL_10STORE%1 dstq, m0, m1 PEL_10STORE%1 dstq, m0, m1
LOOP_END dst, MAX_PB_SIZE, src, srcstride LOOP_END dst, src, srcstride
RET RET
cglobal hevc_put_hevc_uni_epel_h%1_%2, 6, 7, 7, dst, dststride, src, srcstride, height, mx, rfilter cglobal hevc_put_hevc_uni_epel_h%1_%2, 6, 7, 7, dst, dststride, src, srcstride, height, mx, rfilter
...@@ -620,7 +616,7 @@ cglobal hevc_put_hevc_uni_epel_h%1_%2, 6, 7, 7, dst, dststride, src, srcstride, ...@@ -620,7 +616,7 @@ cglobal hevc_put_hevc_uni_epel_h%1_%2, 6, 7, 7, dst, dststride, src, srcstride,
jnz .loop ; height loop jnz .loop ; height loop
RET RET
cglobal hevc_put_hevc_bi_epel_h%1_%2, 8, 9, 7, dst, dststride, src, srcstride, src2, src2stride,height, mx, rfilter cglobal hevc_put_hevc_bi_epel_h%1_%2, 7, 8, 7, dst, dststride, src, srcstride, src2, height, mx, rfilter
movdqa m6, [pw_bi_%2] movdqa m6, [pw_bi_%2]
EPEL_FILTER %2, mx, m4, m5 EPEL_FILTER %2, mx, m4, m5
.loop .loop
...@@ -651,7 +647,7 @@ cglobal hevc_put_hevc_epel_v%1_%2, 6, 7, 6, dst, src, srcstride, height, r3src, ...@@ -651,7 +647,7 @@ cglobal hevc_put_hevc_epel_v%1_%2, 6, 7, 6, dst, src, srcstride, height, r3src,
EPEL_LOAD %2, srcq, srcstride, %1 EPEL_LOAD %2, srcq, srcstride, %1
EPEL_COMPUTE %2, %1, m4, m5 EPEL_COMPUTE %2, %1, m4, m5
PEL_10STORE%1 dstq, m0, m1 PEL_10STORE%1 dstq, m0, m1
LOOP_END dst, MAX_PB_SIZE, src, srcstride LOOP_END dst, src, srcstride
RET RET
cglobal hevc_put_hevc_uni_epel_v%1_%2, 7, 8, 7, dst, dststride, src, srcstride, height, r3src, my, rfilter cglobal hevc_put_hevc_uni_epel_v%1_%2, 7, 8, 7, dst, dststride, src, srcstride, height, r3src, my, rfilter
...@@ -671,7 +667,7 @@ cglobal hevc_put_hevc_uni_epel_v%1_%2, 7, 8, 7, dst, dststride, src, srcstride, ...@@ -671,7 +667,7 @@ cglobal hevc_put_hevc_uni_epel_v%1_%2, 7, 8, 7, dst, dststride, src, srcstride,
RET RET
cglobal hevc_put_hevc_bi_epel_v%1_%2, 9, 10, 7, dst, dststride, src, srcstride, src2, src2stride,height, r3src, my, rfilter cglobal hevc_put_hevc_bi_epel_v%1_%2, 8, 9, 7, dst, dststride, src, srcstride, src2, height, r3src, my, rfilter
lea r3srcq, [srcstrideq*3] lea r3srcq, [srcstrideq*3]
movdqa m6, [pw_bi_%2] movdqa m6, [pw_bi_%2]
sub srcq, srcstrideq sub srcq, srcstrideq
...@@ -729,7 +725,7 @@ cglobal hevc_put_hevc_epel_hv%1_%2, 6, 8, 12 , dst, src, srcstride, height, mx, ...@@ -729,7 +725,7 @@ cglobal hevc_put_hevc_epel_hv%1_%2, 6, 8, 12 , dst, src, srcstride, height, mx,
movdqa m4, m5 movdqa m4, m5
movdqa m5, m6 movdqa m5, m6
movdqa m6, m7 movdqa m6, m7
LOOP_END dst, MAX_PB_SIZE, src, srcstride LOOP_END dst, src, srcstride
RET RET
cglobal hevc_put_hevc_uni_epel_hv%1_%2, 7, 9, 12 , dst, dststride, src, srcstride, height, mx, my, r3src, rfilter cglobal hevc_put_hevc_uni_epel_hv%1_%2, 7, 9, 12 , dst, dststride, src, srcstride, height, mx, my, r3src, rfilter
...@@ -771,7 +767,7 @@ cglobal hevc_put_hevc_uni_epel_hv%1_%2, 7, 9, 12 , dst, dststride, src, srcstrid ...@@ -771,7 +767,7 @@ cglobal hevc_put_hevc_uni_epel_hv%1_%2, 7, 9, 12 , dst, dststride, src, srcstrid
RET RET
cglobal hevc_put_hevc_bi_epel_hv%1_%2, 9, 11, 16, dst, dststride, src, srcstride, src2, src2stride, height, mx, my, r3src, rfilter cglobal hevc_put_hevc_bi_epel_hv%1_%2, 8, 10, 16, dst, dststride, src, srcstride, src2, height, mx, my, r3src, rfilter
%assign %%stride ((%2 + 7)/8) %assign %%stride ((%2 + 7)/8)
sub srcq, srcstrideq sub srcq, srcstrideq
EPEL_HV_FILTER %2 EPEL_HV_FILTER %2
...@@ -828,7 +824,7 @@ cglobal hevc_put_hevc_qpel_h%1_%2, 5, 6, 15, dst, src, srcstride, height, mx, rf ...@@ -828,7 +824,7 @@ cglobal hevc_put_hevc_qpel_h%1_%2, 5, 6, 15, dst, src, srcstride, height, mx, rf
packssdw m0, m1 packssdw m0, m1
%endif %endif
PEL_10STORE%1 dstq, m0, m1 PEL_10STORE%1 dstq, m0, m1
LOOP_END dst, MAX_PB_SIZE, src, srcstride LOOP_END dst, src, srcstride
RET RET
cglobal hevc_put_hevc_uni_qpel_h%1_%2, 6, 7, 15 , dst, dststride, src, srcstride, height, mx, rfilter cglobal hevc_put_hevc_uni_qpel_h%1_%2, 6, 7, 15 , dst, dststride, src, srcstride, height, mx, rfilter
...@@ -848,7 +844,7 @@ cglobal hevc_put_hevc_uni_qpel_h%1_%2, 6, 7, 15 , dst, dststride, src, srcstride ...@@ -848,7 +844,7 @@ cglobal hevc_put_hevc_uni_qpel_h%1_%2, 6, 7, 15 , dst, dststride, src, srcstride
jnz .loop ; height loop jnz .loop ; height loop
RET RET
cglobal hevc_put_hevc_bi_qpel_h%1_%2, 8, 9, 16 , dst, dststride, src, srcstride, src2, src2stride, height, mx, rfilter cglobal hevc_put_hevc_bi_qpel_h%1_%2, 7, 8, 16 , dst, dststride, src, srcstride, src2, height, mx, rfilter
movdqa m9, [pw_bi_%2] movdqa m9, [pw_bi_%2]
QPEL_FILTER %2, mx QPEL_FILTER %2, mx
.loop .loop
...@@ -884,7 +880,7 @@ cglobal hevc_put_hevc_qpel_v%1_%2, 6, 8, 15, dst, src, srcstride, height, r3src, ...@@ -884,7 +880,7 @@ cglobal hevc_put_hevc_qpel_v%1_%2, 6, 8, 15, dst, src, srcstride, height, r3src,
packssdw m0, m1 packssdw m0, m1
%endif %endif
PEL_10STORE%1 dstq, m0, m1 PEL_10STORE%1 dstq, m0, m1
LOOP_END dst, MAX_PB_SIZE, src, srcstride LOOP_END dst, src, srcstride
RET RET
cglobal hevc_put_hevc_uni_qpel_v%1_%2, 7, 9, 15, dst, dststride, src, srcstride, height, r3src, my, rfilter cglobal hevc_put_hevc_uni_qpel_v%1_%2, 7, 9, 15, dst, dststride, src, srcstride, height, r3src, my, rfilter
...@@ -905,13 +901,13 @@ cglobal hevc_put_hevc_uni_qpel_v%1_%2, 7, 9, 15, dst, dststride, src, srcstride, ...@@ -905,13 +901,13 @@ cglobal hevc_put_hevc_uni_qpel_v%1_%2, 7, 9, 15, dst, dststride, src, srcstride,
jnz .loop ; height loop jnz .loop ; height loop
RET RET
cglobal hevc_put_hevc_bi_qpel_v%1_%2, 9, 11, 16, dst, dststride, src, srcstride, src2, src2stride, height, r3src, my, rfilter cglobal hevc_put_hevc_bi_qpel_v%1_%2, 8, 10, 16, dst, dststride, src, srcstride, src2, height, r3src, my, rfilter
movdqa m9, [pw_bi_%2] movdqa m9, [pw_bi_%2]
lea r3srcq, [srcstrideq*3] lea r3srcq, [srcstrideq*3]
QPEL_FILTER %2, my QPEL_FILTER %2, my
.loop .loop
SIMPLE_BILOAD %1, src2q, m10, m11 SIMPLE_BILOAD %1, src2q, m10, m11
QPEL_V_LOAD %2, srcq, srcstride, %1, r10 QPEL_V_LOAD %2, srcq, srcstride, %1, r9
QPEL_COMPUTE %1, %2 QPEL_COMPUTE %1, %2
%if %2 > 8 %if %2 > 8
packssdw m0, m1 packssdw m0, m1
...@@ -999,7 +995,7 @@ cglobal hevc_put_hevc_qpel_hv%1_%2, 6, 8, 12, dst, src, srcstride, height, mx, m ...@@ -999,7 +995,7 @@ cglobal hevc_put_hevc_qpel_hv%1_%2, 6, 8, 12, dst, src, srcstride, height, mx, m
movdqa m13, m14 movdqa m13, m14
movdqa m14, m15 movdqa m14, m15
%endif %endif
LOOP_END dst, MAX_PB_SIZE, src, srcstride LOOP_END dst, src, srcstride
RET RET
cglobal hevc_put_hevc_uni_qpel_hv%1_%2, 7, 9, 12 , dst, dststride, src, srcstride, height, mx, my, r3src, rfilter cglobal hevc_put_hevc_uni_qpel_hv%1_%2, 7, 9, 12 , dst, dststride, src, srcstride, height, mx, my, r3src, rfilter
...@@ -1076,7 +1072,7 @@ cglobal hevc_put_hevc_uni_qpel_hv%1_%2, 7, 9, 12 , dst, dststride, src, srcstrid ...@@ -1076,7 +1072,7 @@ cglobal hevc_put_hevc_uni_qpel_hv%1_%2, 7, 9, 12 , dst, dststride, src, srcstrid
jnz .loop ; height loop jnz .loop ; height loop
RET RET
cglobal hevc_put_hevc_bi_qpel_hv%1_%2, 9, 11, 16, dst, dststride, src, srcstride, src2, src2stride, height, mx, my, r3src, rfilter cglobal hevc_put_hevc_bi_qpel_hv%1_%2, 8, 10, 16, dst, dststride, src, srcstride, src2, height, mx, my, r3src, rfilter
lea mxq, [mxq*8-8] lea mxq, [mxq*8-8]
lea myq, [myq*8-8] lea myq, [myq*8-8]
lea r3srcq, [srcstrideq*3] lea r3srcq, [srcstrideq*3]
...@@ -1220,7 +1216,7 @@ cglobal hevc_put_hevc_uni_w%1_%2, 6, 6, 7, dst, dststride, src, srcstride, heigh ...@@ -1220,7 +1216,7 @@ cglobal hevc_put_hevc_uni_w%1_%2, 6, 6, 7, dst, dststride, src, srcstride, heigh
jnz .loop ; height loop jnz .loop ; height loop
RET RET
cglobal hevc_put_hevc_bi_w%1_%2, 6, 7, 10, dst, dststride, src, srcstride, src2, src2stride, height, denom, wx0, wx1, ox0, ox1 cglobal hevc_put_hevc_bi_w%1_%2, 5, 7, 10, dst, dststride, src, srcstride, src2, height, denom, wx0, wx1, ox0, ox1
mov r6d, denomm mov r6d, denomm
%if %1 <= 4 %if %1 <= 4
pxor m1, m1 pxor m1, m1
......
...@@ -42,10 +42,10 @@ dst ## _bi_w[idx1][idx2][idx3] = ff_hevc_put_hevc_bi_w_ ## name ## _ ## D ## _## ...@@ -42,10 +42,10 @@ dst ## _bi_w[idx1][idx2][idx3] = ff_hevc_put_hevc_bi_w_ ## name ## _ ## D ## _##
#define PEL_PROTOTYPE(name, D, opt) \ #define PEL_PROTOTYPE(name, D, opt) \
void ff_hevc_put_hevc_ ## name ## _ ## D ## _##opt(int16_t *dst, uint8_t *_src, ptrdiff_t _srcstride, int height, intptr_t mx, intptr_t my,int width); \ void ff_hevc_put_hevc_ ## name ## _ ## D ## _##opt(int16_t *dst, uint8_t *_src, ptrdiff_t _srcstride, int height, intptr_t mx, intptr_t my,int width); \
void ff_hevc_put_hevc_bi_ ## name ## _ ## D ## _##opt(uint8_t *_dst, ptrdiff_t _dststride, uint8_t *_src, ptrdiff_t _srcstride, int16_t *src2, ptrdiff_t src2stride, int height, intptr_t mx, intptr_t my, int width); \ void ff_hevc_put_hevc_bi_ ## name ## _ ## D ## _##opt(uint8_t *_dst, ptrdiff_t _dststride, uint8_t *_src, ptrdiff_t _srcstride, int16_t *src2, int height, intptr_t mx, intptr_t my, int width); \
void ff_hevc_put_hevc_uni_ ## name ## _ ## D ## _##opt(uint8_t *_dst, ptrdiff_t _dststride, uint8_t *_src, ptrdiff_t _srcstride, int height, intptr_t mx, intptr_t my, int width); \ void ff_hevc_put_hevc_uni_ ## name ## _ ## D ## _##opt(uint8_t *_dst, ptrdiff_t _dststride, uint8_t *_src, ptrdiff_t _srcstride, int height, intptr_t mx, intptr_t my, int width); \
void ff_hevc_put_hevc_uni_w_ ## name ## _ ## D ## _##opt(uint8_t *_dst, ptrdiff_t _dststride, uint8_t *_src, ptrdiff_t _srcstride, int height, int denom, int wx, int ox, intptr_t mx, intptr_t my, int width); \ void ff_hevc_put_hevc_uni_w_ ## name ## _ ## D ## _##opt(uint8_t *_dst, ptrdiff_t _dststride, uint8_t *_src, ptrdiff_t _srcstride, int height, int denom, int wx, int ox, intptr_t mx, intptr_t my, int width); \
void ff_hevc_put_hevc_bi_w_ ## name ## _ ## D ## _##opt(uint8_t *_dst, ptrdiff_t _dststride, uint8_t *_src, ptrdiff_t _srcstride, int16_t *src2, ptrdiff_t src2stride, int height, int denom, int wx0, int wx1, int ox0, int ox1, intptr_t mx, intptr_t my, int width) void ff_hevc_put_hevc_bi_w_ ## name ## _ ## D ## _##opt(uint8_t *_dst, ptrdiff_t _dststride, uint8_t *_src, ptrdiff_t _srcstride, int16_t *src2, int height, int denom, int wx0, int wx1, int ox0, int ox1, intptr_t mx, intptr_t my, int width)
/////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
...@@ -75,7 +75,7 @@ void ff_hevc_put_hevc_bi_w_ ## name ## _ ## D ## _##opt(uint8_t *_dst, ptrdiff_t ...@@ -75,7 +75,7 @@ void ff_hevc_put_hevc_bi_w_ ## name ## _ ## D ## _##opt(uint8_t *_dst, ptrdiff_t
#define WEIGHTING_PROTOTYPE(width, bitd, opt) \ #define WEIGHTING_PROTOTYPE(width, bitd, opt) \
void ff_hevc_put_hevc_uni_w##width##_##bitd##_##opt(uint8_t *dst, ptrdiff_t dststride, int16_t *_src, ptrdiff_t _srcstride, int height, int denom, int _wx, int _ox); \ void ff_hevc_put_hevc_uni_w##width##_##bitd##_##opt(uint8_t *dst, ptrdiff_t dststride, int16_t *_src, ptrdiff_t _srcstride, int height, int denom, int _wx, int _ox); \
void ff_hevc_put_hevc_bi_w##width##_##bitd##_##opt(uint8_t *dst, ptrdiff_t dststride, int16_t *_src, ptrdiff_t _srcstride, int16_t *_src2, ptrdiff_t _src2stride, int height, int denom, int _wx0, int _wx1, int _ox0, int _ox1) void ff_hevc_put_hevc_bi_w##width##_##bitd##_##opt(uint8_t *dst, ptrdiff_t dststride, int16_t *_src, ptrdiff_t _srcstride, int16_t *_src2, int height, int denom, int _wx0, int _wx1, int _ox0, int _ox1)
#define WEIGHTING_PROTOTYPES(bitd, opt) \ #define WEIGHTING_PROTOTYPES(bitd, opt) \
WEIGHTING_PROTOTYPE(2, bitd, opt); \ WEIGHTING_PROTOTYPE(2, bitd, opt); \
......
...@@ -102,7 +102,7 @@ void ff_hevc_put_hevc_uni_##name##W##_##bitd##_##opt(uint8_t *_dst, ptrdiff_t ds ...@@ -102,7 +102,7 @@ void ff_hevc_put_hevc_uni_##name##W##_##bitd##_##opt(uint8_t *_dst, ptrdiff_t ds
} }
#define mc_rep_bi_func(name, bitd, step, W, opt) \ #define mc_rep_bi_func(name, bitd, step, W, opt) \
void ff_hevc_put_hevc_bi_##name##W##_##bitd##_##opt(uint8_t *_dst, ptrdiff_t dststride, uint8_t *_src, \ void ff_hevc_put_hevc_bi_##name##W##_##bitd##_##opt(uint8_t *_dst, ptrdiff_t dststride, uint8_t *_src, \
ptrdiff_t _srcstride, int16_t* _src2, ptrdiff_t _src2stride, \ ptrdiff_t _srcstride, int16_t* _src2, \
int height, intptr_t mx, intptr_t my, int width) \ int height, intptr_t mx, intptr_t my, int width) \
{ \ { \
int i; \ int i; \
...@@ -114,7 +114,7 @@ void ff_hevc_put_hevc_bi_##name##W##_##bitd##_##opt(uint8_t *_dst, ptrdiff_t dst ...@@ -114,7 +114,7 @@ void ff_hevc_put_hevc_bi_##name##W##_##bitd##_##opt(uint8_t *_dst, ptrdiff_t dst
dst = _dst + (i * ((bitd + 7) / 8)); \ dst = _dst + (i * ((bitd + 7) / 8)); \
src2 = _src2 + i; \ src2 = _src2 + i; \
ff_hevc_put_hevc_bi_##name##step##_##bitd##_##opt(dst, dststride, src, _srcstride, src2, \ ff_hevc_put_hevc_bi_##name##step##_##bitd##_##opt(dst, dststride, src, _srcstride, src2, \
_src2stride, height, mx, my, width); \ height, mx, my, width); \
} \ } \
} }
...@@ -283,7 +283,7 @@ mc_rep_uni_w(12, 8, 64, sse4); ...@@ -283,7 +283,7 @@ mc_rep_uni_w(12, 8, 64, sse4);
#define mc_rep_bi_w(bitd, step, W, opt) \ #define mc_rep_bi_w(bitd, step, W, opt) \
void ff_hevc_put_hevc_bi_w##W##_##bitd##_##opt(uint8_t *_dst, ptrdiff_t dststride, int16_t *_src, ptrdiff_t _srcstride, \ void ff_hevc_put_hevc_bi_w##W##_##bitd##_##opt(uint8_t *_dst, ptrdiff_t dststride, int16_t *_src, ptrdiff_t _srcstride, \
int16_t *_src2, ptrdiff_t _src2stride, int height, \ int16_t *_src2, int height, \
int denom, int _wx0, int _wx1, int _ox0, int _ox1) \ int denom, int _wx0, int _wx1, int _ox0, int _ox1) \
{ \ { \
int i; \ int i; \
...@@ -294,7 +294,7 @@ void ff_hevc_put_hevc_bi_w##W##_##bitd##_##opt(uint8_t *_dst, ptrdiff_t dststrid ...@@ -294,7 +294,7 @@ void ff_hevc_put_hevc_bi_w##W##_##bitd##_##opt(uint8_t *_dst, ptrdiff_t dststrid
src = _src + i; \ src = _src + i; \
src2 = _src2 + i; \ src2 = _src2 + i; \
dst = _dst + (i * ((bitd + 7) / 8)); \ dst = _dst + (i * ((bitd + 7) / 8)); \
ff_hevc_put_hevc_bi_w##step##_##bitd##_##opt(dst, dststride, src, _srcstride, src2, _src2stride, \ ff_hevc_put_hevc_bi_w##step##_##bitd##_##opt(dst, dststride, src, _srcstride, src2, \
height, denom, _wx0, _wx1, _ox0, _ox1); \ height, denom, _wx0, _wx1, _ox0, _ox1); \
} \ } \
} }
...@@ -381,14 +381,14 @@ mc_uni_w_funcs(qpel_hv, 12, sse4); ...@@ -381,14 +381,14 @@ mc_uni_w_funcs(qpel_hv, 12, sse4);
#define mc_bi_w_func(name, bitd, W, opt) \ #define mc_bi_w_func(name, bitd, W, opt) \
void ff_hevc_put_hevc_bi_w_##name##W##_##bitd##_##opt(uint8_t *_dst, ptrdiff_t _dststride, \ void ff_hevc_put_hevc_bi_w_##name##W##_##bitd##_##opt(uint8_t *_dst, ptrdiff_t _dststride, \
uint8_t *_src, ptrdiff_t _srcstride, \ uint8_t *_src, ptrdiff_t _srcstride, \
int16_t *_src2, ptrdiff_t _src2stride, \ int16_t *_src2, \
int height, int denom, \ int height, int denom, \
int _wx0, int _wx1, int _ox0, int _ox1, \ int _wx0, int _wx1, int _ox0, int _ox1, \
intptr_t mx, intptr_t my, int width) \ intptr_t mx, intptr_t my, int width) \
{ \ { \
LOCAL_ALIGNED_16(int16_t, temp, [71 * MAX_PB_SIZE]); \ LOCAL_ALIGNED_16(int16_t, temp, [71 * MAX_PB_SIZE]); \
ff_hevc_put_hevc_##name##W##_##bitd##_##opt(temp, _src, _srcstride, height, mx, my, width); \ ff_hevc_put_hevc_##name##W##_##bitd##_##opt(temp, _src, _srcstride, height, mx, my, width); \
ff_hevc_put_hevc_bi_w##W##_##bitd##_##opt(_dst, _dststride, temp, MAX_PB_SIZE, _src2, _src2stride, \ ff_hevc_put_hevc_bi_w##W##_##bitd##_##opt(_dst, _dststride, temp, MAX_PB_SIZE, _src2, \
height, denom, _wx0, _wx1, _ox0, _ox1); \ height, denom, _wx0, _wx1, _ox0, _ox1); \
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment