23#ifndef AVCODEC_LOONGARCH_HEVCDSP_LSX_H
24#define AVCODEC_LOONGARCH_HEVCDSP_LSX_H
28#define MC(PEL, DIR, WIDTH) \
29void ff_hevc_put_hevc_##PEL##_##DIR##WIDTH##_8_lsx(int16_t *dst, \
31 ptrdiff_t src_stride, \
88#define BI_MC(PEL, DIR, WIDTH) \
89void ff_hevc_put_hevc_bi_##PEL##_##DIR##WIDTH##_8_lsx(uint8_t *dst, \
90 ptrdiff_t dst_stride, \
92 ptrdiff_t src_stride, \
93 const int16_t *src_16bit, \
151#define UNI_MC(PEL, DIR, WIDTH) \
152void ff_hevc_put_hevc_uni_##PEL##_##DIR##WIDTH##_8_lsx(uint8_t *dst, \
153 ptrdiff_t dst_stride, \
154 const uint8_t *src, \
155 ptrdiff_t src_stride, \
193#define UNI_W_MC(PEL, DIR, WIDTH) \
194void ff_hevc_put_hevc_uni_w_##PEL##_##DIR##WIDTH##_8_lsx(uint8_t *dst, \
197 const uint8_t *src, \
219 const uint8_t *p_is_pcm,
const uint8_t *q_is_pcm);
223 const uint8_t *p_is_pcm,
const uint8_t *q_is_pcm);
226 const int32_t *tc,
const uint8_t *p_is_pcm,
227 const uint8_t *q_is_pcm);
230 const int32_t *tc,
const uint8_t *p_is_pcm,
231 const uint8_t *q_is_pcm);
234 ptrdiff_t stride_dst,
235 const int16_t *sao_offset_val,
248#define PEL_UNI_W(PEL, DIR, WIDTH) \
249void ff_hevc_put_hevc_##PEL##_uni_w_##DIR##WIDTH##_8_lsx(uint8_t *dst, \
252 const uint8_t *src, \
uint8_t ptrdiff_t const uint8_t ptrdiff_t int intptr_t intptr_t int int16_t * dst
void ff_hevc_idct_16x16_lsx(int16_t *coeffs, int col_limit)
void ff_hevc_idct_4x4_lsx(int16_t *coeffs, int col_limit)
#define UNI_MC(PEL, DIR, WIDTH)
void ff_hevc_sao_edge_filter_8_lsx(uint8_t *dst, const uint8_t *src, ptrdiff_t stride_dst, const int16_t *sao_offset_val, int eo, int width, int height)
void ff_hevc_add_residual16x16_8_lsx(uint8_t *dst, const int16_t *res, ptrdiff_t stride)
void ff_hevc_idct_32x32_lsx(int16_t *coeffs, int col_limit)
void ff_hevc_add_residual4x4_8_lsx(uint8_t *dst, const int16_t *res, ptrdiff_t stride)
void ff_hevc_loop_filter_chroma_h_8_lsx(uint8_t *src, ptrdiff_t stride, const int32_t *tc, const uint8_t *p_is_pcm, const uint8_t *q_is_pcm)
void ff_hevc_idct_8x8_lsx(int16_t *coeffs, int col_limit)
#define BI_MC(PEL, DIR, WIDTH)
void ff_hevc_add_residual8x8_8_lsx(uint8_t *dst, const int16_t *res, ptrdiff_t stride)
#define PEL_UNI_W(PEL, DIR, WIDTH)
#define MC(PEL, DIR, WIDTH)
void ff_hevc_loop_filter_luma_h_8_lsx(uint8_t *src, ptrdiff_t stride, int32_t beta, const int32_t *tc, const uint8_t *p_is_pcm, const uint8_t *q_is_pcm)
#define UNI_W_MC(PEL, DIR, WIDTH)
void ff_hevc_add_residual32x32_8_lsx(uint8_t *dst, const int16_t *res, ptrdiff_t stride)
void ff_hevc_loop_filter_chroma_v_8_lsx(uint8_t *src, ptrdiff_t stride, const int32_t *tc, const uint8_t *p_is_pcm, const uint8_t *q_is_pcm)
void ff_hevc_loop_filter_luma_v_8_lsx(uint8_t *src, ptrdiff_t stride, int32_t beta, const int32_t *tc, const uint8_t *p_is_pcm, const uint8_t *q_is_pcm)