FFmpeg
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Macros | Functions | Variables
hevc_mc_uni_msa.c File Reference
#include "libavutil/mips/generic_macros_msa.h"
#include "libavcodec/mips/hevcdsp_mips.h"
#include "libavcodec/mips/hevc_macros_msa.h"

Go to the source code of this file.

Macros

#define FILT_8TAP_DPADD_S_H(vec0, vec1, vec2, vec3,filt0, filt1, filt2, filt3)
 
#define HORIZ_8TAP_4WID_4VECS_FILT(src0, src1, src2, src3,mask0, mask1, mask2, mask3,filt0, filt1, filt2, filt3,out0, out1)
 
#define HORIZ_8TAP_8WID_4VECS_FILT(src0, src1, src2, src3,mask0, mask1, mask2, mask3,filt0, filt1, filt2, filt3,out0, out1, out2, out3)
 
#define FILT_4TAP_DPADD_S_H(vec0, vec1, filt0, filt1)
 
#define HORIZ_4TAP_4WID_4VECS_FILT(src0, src1, src2, src3,mask0, mask1, filt0, filt1,out0, out1)
 
#define HORIZ_4TAP_8WID_4VECS_FILT(src0, src1, src2, src3,mask0, mask1, filt0, filt1,out0, out1, out2, out3)
 
#define UNI_MC_COPY(WIDTH)
 
#define UNI_MC(PEL, DIR, WIDTH, TAP, DIR1, FILT_DIR)
 
#define UNI_MC_HV(PEL, DIR, WIDTH, TAP, DIR1)
 

Functions

static void copy_width8_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, int32_t height)
 
static void copy_width12_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, int32_t height)
 
static void copy_16multx8mult_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, int32_t height, int32_t width)
 
static void copy_width16_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, int32_t height)
 
static void copy_width24_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, int32_t height)
 
static void copy_width32_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, int32_t height)
 
static void copy_width48_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, int32_t height)
 
static void copy_width64_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, int32_t height)
 
static void common_hz_8t_4x4_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, uint8_t rnd_val)
 
static void common_hz_8t_4x8_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, uint8_t rnd_val)
 
static void common_hz_8t_4x16_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, uint8_t rnd_val)
 
static void common_hz_8t_4w_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, uint8_t rnd_val)
 
static void common_hz_8t_8x4_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, uint8_t rnd_val)
 
static void common_hz_8t_8x8mult_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, uint8_t rnd_val)
 
static void common_hz_8t_8w_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, uint8_t rnd_val)
 
static void common_hz_8t_12w_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, uint8_t rnd_val)
 
static void common_hz_8t_16w_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, uint8_t rnd_val)
 
static void common_hz_8t_24w_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, uint8_t rnd_val)
 
static void common_hz_8t_32w_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, uint8_t rnd_val)
 
static void common_hz_8t_48w_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, uint8_t rnd_val)
 
static void common_hz_8t_64w_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, uint8_t rnd_val)
 
static void common_vt_8t_4w_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, uint8_t rnd_val)
 
static void common_vt_8t_8w_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, uint8_t rnd_val)
 
static void common_vt_8t_12w_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, uint8_t rnd_val)
 
static void common_vt_8t_16w_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, uint8_t rnd_val)
 
static void common_vt_8t_16w_mult_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, uint8_t rnd_val, int32_t width)
 
static void common_vt_8t_24w_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, uint8_t rnd_val)
 
static void common_vt_8t_32w_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, uint8_t rnd_val)
 
static void common_vt_8t_48w_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, uint8_t rnd_val)
 
static void common_vt_8t_64w_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, uint8_t rnd_val)
 
static void hevc_hv_uni_8t_4w_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter_x, const int8_t *filter_y, int32_t height)
 
static void hevc_hv_uni_8t_8multx2mult_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter_x, const int8_t *filter_y, int32_t height, int32_t width)
 
static void hevc_hv_uni_8t_8w_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter_x, const int8_t *filter_y, int32_t height)
 
static void hevc_hv_uni_8t_12w_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter_x, const int8_t *filter_y, int32_t height)
 
static void hevc_hv_uni_8t_16w_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter_x, const int8_t *filter_y, int32_t height)
 
static void hevc_hv_uni_8t_24w_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter_x, const int8_t *filter_y, int32_t height)
 
static void hevc_hv_uni_8t_32w_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter_x, const int8_t *filter_y, int32_t height)
 
static void hevc_hv_uni_8t_48w_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter_x, const int8_t *filter_y, int32_t height)
 
static void hevc_hv_uni_8t_64w_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter_x, const int8_t *filter_y, int32_t height)
 
static void common_hz_4t_4x2_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, uint8_t rnd_val)
 
static void common_hz_4t_4x4_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, uint8_t rnd_val)
 
static void common_hz_4t_4x8_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, uint8_t rnd_val)
 
static void common_hz_4t_4x16_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, uint8_t rnd_val)
 
static void common_hz_4t_4w_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, uint8_t rnd_val)
 
static void common_hz_4t_6w_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, uint8_t rnd_val)
 
static void common_hz_4t_8x2mult_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, uint8_t rnd_val)
 
static void common_hz_4t_8x4mult_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, uint8_t rnd_val)
 
static void common_hz_4t_8w_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, uint8_t rnd_val)
 
static void common_hz_4t_12w_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, uint8_t rnd_val)
 
static void common_hz_4t_16w_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, uint8_t rnd_val)
 
static void common_hz_4t_24w_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, uint8_t rnd_val)
 
static void common_hz_4t_32w_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, uint8_t rnd_val)
 
static void common_vt_4t_4x2_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, uint8_t rnd_val)
 
static void common_vt_4t_4x4multiple_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, uint8_t rnd_val)
 
static void common_vt_4t_4w_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, uint8_t rnd_val)
 
static void common_vt_4t_6w_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, uint8_t rnd_val)
 
static void common_vt_4t_8x2_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, uint8_t rnd_val)
 
static void common_vt_4t_8x6_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, uint8_t rnd_val)
 
static void common_vt_4t_8x4mult_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, uint8_t rnd_val)
 
static void common_vt_4t_8w_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, uint8_t rnd_val)
 
static void common_vt_4t_12w_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, uint8_t rnd_val)
 
static void common_vt_4t_16w_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, uint8_t rnd_val)
 
static void common_vt_4t_24w_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, uint8_t rnd_val)
 
static void common_vt_4t_32w_mult_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, uint8_t rnd_val, int32_t width)
 
static void common_vt_4t_32w_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter, int32_t height, uint8_t rnd_val)
 
static void hevc_hv_uni_4t_4x2_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter_x, const int8_t *filter_y, int32_t height)
 
static void hevc_hv_uni_4t_4x4_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter_x, const int8_t *filter_y, int32_t height)
 
static void hevc_hv_uni_4t_4multx8mult_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter_x, const int8_t *filter_y, int32_t height)
 
static void hevc_hv_uni_4t_4w_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter_x, const int8_t *filter_y, int32_t height)
 
static void hevc_hv_uni_4t_6w_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter_x, const int8_t *filter_y, int32_t height)
 
static void hevc_hv_uni_4t_8x2_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter_x, const int8_t *filter_y, int32_t height)
 
static void hevc_hv_uni_4t_8x6_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter_x, const int8_t *filter_y, int32_t height)
 
static void hevc_hv_uni_4t_8w_mult_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter_x, const int8_t *filter_y, int32_t height, int32_t width)
 
static void hevc_hv_uni_4t_8w_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter_x, const int8_t *filter_y, int32_t height)
 
static void hevc_hv_uni_4t_12w_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter_x, const int8_t *filter_y, int32_t height)
 
static void hevc_hv_uni_4t_16w_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter_x, const int8_t *filter_y, int32_t height)
 
static void hevc_hv_uni_4t_24w_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter_x, const int8_t *filter_y, int32_t height)
 
static void hevc_hv_uni_4t_32w_msa (uint8_t *src, int32_t src_stride, uint8_t *dst, int32_t dst_stride, const int8_t *filter_x, const int8_t *filter_y, int32_t height)
 
 UNI_MC_COPY (8)
 
 UNI_MC_COPY (12)
 
 UNI_MC_COPY (16)
 
 UNI_MC_COPY (24)
 
 UNI_MC_COPY (32)
 
 UNI_MC_COPY (48)
 
 UNI_MC_COPY (64)
 
 UNI_MC (qpel, h, 4, 8, hz, mx)
 
 UNI_MC (qpel, h, 8, 8, hz, mx)
 
 UNI_MC (qpel, h, 12, 8, hz, mx)
 
 UNI_MC (qpel, h, 16, 8, hz, mx)
 
 UNI_MC (qpel, h, 24, 8, hz, mx)
 
 UNI_MC (qpel, h, 32, 8, hz, mx)
 
 UNI_MC (qpel, h, 48, 8, hz, mx)
 
 UNI_MC (qpel, h, 64, 8, hz, mx)
 
 UNI_MC (qpel, v, 4, 8, vt, my)
 
 UNI_MC (qpel, v, 8, 8, vt, my)
 
 UNI_MC (qpel, v, 12, 8, vt, my)
 
 UNI_MC (qpel, v, 16, 8, vt, my)
 
 UNI_MC (qpel, v, 24, 8, vt, my)
 
 UNI_MC (qpel, v, 32, 8, vt, my)
 
 UNI_MC (qpel, v, 48, 8, vt, my)
 
 UNI_MC (qpel, v, 64, 8, vt, my)
 
 UNI_MC (epel, h, 4, 4, hz, mx)
 
 UNI_MC (epel, h, 6, 4, hz, mx)
 
 UNI_MC (epel, h, 8, 4, hz, mx)
 
 UNI_MC (epel, h, 12, 4, hz, mx)
 
 UNI_MC (epel, h, 16, 4, hz, mx)
 
 UNI_MC (epel, h, 24, 4, hz, mx)
 
 UNI_MC (epel, h, 32, 4, hz, mx)
 
 UNI_MC (epel, v, 4, 4, vt, my)
 
 UNI_MC (epel, v, 6, 4, vt, my)
 
 UNI_MC (epel, v, 8, 4, vt, my)
 
 UNI_MC (epel, v, 12, 4, vt, my)
 
 UNI_MC (epel, v, 16, 4, vt, my)
 
 UNI_MC (epel, v, 24, 4, vt, my)
 
 UNI_MC (epel, v, 32, 4, vt, my)
 
 UNI_MC_HV (qpel, hv, 4, 8, hv)
 
 UNI_MC_HV (qpel, hv, 8, 8, hv)
 
 UNI_MC_HV (qpel, hv, 12, 8, hv)
 
 UNI_MC_HV (qpel, hv, 16, 8, hv)
 
 UNI_MC_HV (qpel, hv, 24, 8, hv)
 
 UNI_MC_HV (qpel, hv, 32, 8, hv)
 
 UNI_MC_HV (qpel, hv, 48, 8, hv)
 
 UNI_MC_HV (qpel, hv, 64, 8, hv)
 
 UNI_MC_HV (epel, hv, 4, 4, hv)
 
 UNI_MC_HV (epel, hv, 6, 4, hv)
 
 UNI_MC_HV (epel, hv, 8, 4, hv)
 
 UNI_MC_HV (epel, hv, 12, 4, hv)
 
 UNI_MC_HV (epel, hv, 16, 4, hv)
 
 UNI_MC_HV (epel, hv, 24, 4, hv)
 
 UNI_MC_HV (epel, hv, 32, 4, hv)
 

Variables

static const uint8_t mc_filt_mask_arr [16 *3]
 

Macro Definition Documentation

#define FILT_8TAP_DPADD_S_H (   vec0,
  vec1,
  vec2,
  vec3,
  filt0,
  filt1,
  filt2,
  filt3 
)
Value:
( { \
v8i16 tmp0, tmp1; \
\
tmp0 = __msa_dotp_s_h((v16i8) vec0, (v16i8) filt0); \
tmp0 = __msa_dpadd_s_h(tmp0, (v16i8) vec1, (v16i8) filt1); \
tmp1 = __msa_dotp_s_h((v16i8) vec2, (v16i8) filt2); \
tmp1 = __msa_dpadd_s_h(tmp1, (v16i8) vec3, (v16i8) filt3); \
tmp0 = __msa_adds_s_h(tmp0, tmp1); \
\
tmp0; \
} )

Definition at line 261 of file hevc_mc_uni_msa.c.

Referenced by common_vt_8t_12w_msa(), common_vt_8t_16w_msa(), common_vt_8t_16w_mult_msa(), common_vt_8t_4w_msa(), and common_vt_8t_8w_msa().

#define HORIZ_8TAP_4WID_4VECS_FILT (   src0,
  src1,
  src2,
  src3,
  mask0,
  mask1,
  mask2,
  mask3,
  filt0,
  filt1,
  filt2,
  filt3,
  out0,
  out1 
)
Value:
{ \
v16i8 vec0_m, vec1_m, vec2_m, vec3_m, vec4_m, vec5_m, vec6_m, vec7_m; \
v8i16 res0_m, res1_m, res2_m, res3_m; \
VSHF_B2_SB(src0, src1, src2, src3, mask0, mask0, vec0_m, vec1_m); \
DOTP_SB2_SH(vec0_m, vec1_m, filt0, filt0, res0_m, res1_m); \
VSHF_B2_SB(src0, src1, src2, src3, mask1, mask1, vec2_m, vec3_m); \
DPADD_SB2_SH(vec2_m, vec3_m, filt1, filt1, res0_m, res1_m); \
VSHF_B2_SB(src0, src1, src2, src3, mask2, mask2, vec4_m, vec5_m); \
DOTP_SB2_SH(vec4_m, vec5_m, filt2, filt2, res2_m, res3_m); \
VSHF_B2_SB(src0, src1, src2, src3, mask3, mask3, vec6_m, vec7_m); \
DPADD_SB2_SH(vec6_m, vec7_m, filt3, filt3, res2_m, res3_m); \
ADDS_SH2_SH(res0_m, res2_m, res1_m, res3_m, out0, out1); \
}
#define VSHF_B2_SB(...)
#define ADDS_SH2_SH(...)
#define DPADD_SB2_SH(...)
#define src1
Definition: h264pred.c:139
#define src0
Definition: h264pred.c:138
#define DOTP_SB2_SH(...)

Definition at line 275 of file hevc_mc_uni_msa.c.

Referenced by common_hz_8t_12w_msa(), common_hz_8t_4x16_msa(), common_hz_8t_4x4_msa(), and common_hz_8t_4x8_msa().

#define HORIZ_8TAP_8WID_4VECS_FILT (   src0,
  src1,
  src2,
  src3,
  mask0,
  mask1,
  mask2,
  mask3,
  filt0,
  filt1,
  filt2,
  filt3,
  out0,
  out1,
  out2,
  out3 
)
Value:
{ \
v16i8 vec0_m, vec1_m, vec2_m, vec3_m, vec4_m, vec5_m, vec6_m, vec7_m; \
v8i16 res0_m, res1_m, res2_m, res3_m, res4_m, res5_m, res6_m, res7_m; \
VSHF_B2_SB(src0, src0, src1, src1, mask0, mask0, vec0_m, vec1_m); \
VSHF_B2_SB(src2, src2, src3, src3, mask0, mask0, vec2_m, vec3_m); \
DOTP_SB4_SH(vec0_m, vec1_m, vec2_m, vec3_m, filt0, filt0, filt0, filt0, \
res0_m, res1_m, res2_m, res3_m); \
VSHF_B2_SB(src0, src0, src1, src1, mask2, mask2, vec0_m, vec1_m); \
VSHF_B2_SB(src2, src2, src3, src3, mask2, mask2, vec2_m, vec3_m); \
DOTP_SB4_SH(vec0_m, vec1_m, vec2_m, vec3_m, filt2, filt2, filt2, filt2, \
res4_m, res5_m, res6_m, res7_m); \
VSHF_B2_SB(src0, src0, src1, src1, mask1, mask1, vec4_m, vec5_m); \
VSHF_B2_SB(src2, src2, src3, src3, mask1, mask1, vec6_m, vec7_m); \
DPADD_SB4_SH(vec4_m, vec5_m, vec6_m, vec7_m, filt1, filt1, filt1, filt1, \
res0_m, res1_m, res2_m, res3_m); \
VSHF_B2_SB(src0, src0, src1, src1, mask3, mask3, vec4_m, vec5_m); \
VSHF_B2_SB(src2, src2, src3, src3, mask3, mask3, vec6_m, vec7_m); \
DPADD_SB4_SH(vec4_m, vec5_m, vec6_m, vec7_m, filt3, filt3, filt3, filt3, \
res4_m, res5_m, res6_m, res7_m); \
ADDS_SH4_SH(res0_m, res4_m, res1_m, res5_m, res2_m, res6_m, res3_m, \
res7_m, out0, out1, out2, out3); \
}
#define DPADD_SB4_SH(...)
#define VSHF_B2_SB(...)
#define src1
Definition: h264pred.c:139
#define DOTP_SB4_SH(...)
#define src0
Definition: h264pred.c:138
#define ADDS_SH4_SH(...)

Definition at line 294 of file hevc_mc_uni_msa.c.

Referenced by common_hz_8t_12w_msa(), common_hz_8t_16w_msa(), common_hz_8t_32w_msa(), common_hz_8t_64w_msa(), common_hz_8t_8x4_msa(), and common_hz_8t_8x8mult_msa().

#define FILT_4TAP_DPADD_S_H (   vec0,
  vec1,
  filt0,
  filt1 
)
Value:
( { \
v8i16 tmp0; \
\
tmp0 = __msa_dotp_s_h((v16i8) vec0, (v16i8) filt0); \
tmp0 = __msa_dpadd_s_h(tmp0, (v16i8) vec1, (v16i8) filt1); \
\
tmp0; \
} )

Definition at line 322 of file hevc_mc_uni_msa.c.

Referenced by common_hz_4t_4x2_msa(), common_vt_4t_12w_msa(), common_vt_4t_16w_msa(), common_vt_4t_24w_msa(), common_vt_4t_32w_mult_msa(), common_vt_4t_4x2_msa(), common_vt_4t_4x4multiple_msa(), common_vt_4t_6w_msa(), common_vt_4t_8x2_msa(), common_vt_4t_8x4mult_msa(), and common_vt_4t_8x6_msa().

#define HORIZ_4TAP_4WID_4VECS_FILT (   src0,
  src1,
  src2,
  src3,
  mask0,
  mask1,
  filt0,
  filt1,
  out0,
  out1 
)
Value:
{ \
v16i8 vec0_m, vec1_m, vec2_m, vec3_m; \
VSHF_B2_SB(src0, src1, src2, src3, mask0, mask0, vec0_m, vec1_m); \
DOTP_SB2_SH(vec0_m, vec1_m, filt0, filt0, out0, out1); \
VSHF_B2_SB(src0, src1, src2, src3, mask1, mask1, vec2_m, vec3_m); \
DPADD_SB2_SH(vec2_m, vec3_m, filt1, filt1, out0, out1); \
}
#define VSHF_B2_SB(...)
#define DPADD_SB2_SH(...)
#define src1
Definition: h264pred.c:139
#define src0
Definition: h264pred.c:138
#define DOTP_SB2_SH(...)

Definition at line 332 of file hevc_mc_uni_msa.c.

Referenced by common_hz_4t_4x16_msa(), common_hz_4t_4x4_msa(), and common_hz_4t_4x8_msa().

#define HORIZ_4TAP_8WID_4VECS_FILT (   src0,
  src1,
  src2,
  src3,
  mask0,
  mask1,
  filt0,
  filt1,
  out0,
  out1,
  out2,
  out3 
)
Value:
{ \
v16i8 vec0_m, vec1_m, vec2_m, vec3_m; \
VSHF_B2_SB(src0, src0, src1, src1, mask0, mask0, vec0_m, vec1_m); \
VSHF_B2_SB(src2, src2, src3, src3, mask0, mask0, vec2_m, vec3_m); \
DOTP_SB4_SH(vec0_m, vec1_m, vec2_m, vec3_m, filt0, filt0, filt0, filt0, \
out0, out1, out2, out3); \
VSHF_B2_SB(src0, src0, src1, src1, mask1, mask1, vec0_m, vec1_m); \
VSHF_B2_SB(src2, src2, src3, src3, mask1, mask1, vec2_m, vec3_m); \
DPADD_SB4_SH(vec0_m, vec1_m, vec2_m, vec3_m, filt1, filt1, filt1, filt1, \
out0, out1, out2, out3); \
}
#define DPADD_SB4_SH(...)
#define VSHF_B2_SB(...)
#define src1
Definition: h264pred.c:139
#define DOTP_SB4_SH(...)
#define src0
Definition: h264pred.c:138

Definition at line 344 of file hevc_mc_uni_msa.c.

Referenced by common_hz_4t_16w_msa(), common_hz_4t_32w_msa(), common_hz_4t_6w_msa(), and common_hz_4t_8x4mult_msa().

#define UNI_MC_COPY (   WIDTH)
Value:
void ff_hevc_put_hevc_uni_pel_pixels##WIDTH##_8_msa(uint8_t *dst, \
ptrdiff_t dst_stride, \
ptrdiff_t src_stride, \
int height, \
intptr_t mx, \
intptr_t my, \
int width) \
{ \
copy_width##WIDTH##_msa(src, src_stride, dst, dst_stride, height); \
}
#define WIDTH
Definition: c93.c:43
uint8_t
#define src
Definition: vp9dsp.c:530
BYTE int const BYTE int int int height
Definition: avisynth_c.h:676
static int width

Definition at line 3850 of file hevc_mc_uni_msa.c.

#define UNI_MC (   PEL,
  DIR,
  WIDTH,
  TAP,
  DIR1,
  FILT_DIR 
)
Value:
void ff_hevc_put_hevc_uni_##PEL##_##DIR##WIDTH##_8_msa(uint8_t *dst, \
ptrdiff_t \
dst_stride, \
ptrdiff_t \
src_stride, \
int height, \
intptr_t mx, \
intptr_t my, \
int width) \
{ \
const int8_t *filter = ff_hevc_##PEL##_filters[FILT_DIR - 1]; \
\
common_##DIR1##_##TAP##t_##WIDTH##w_msa(src, src_stride, dst, dst_stride, \
filter, height, 6); \
}
#define WIDTH
Definition: c93.c:43
#define _(x)
uint8_t
static void filter(int16_t *output, ptrdiff_t out_stride, int16_t *low, ptrdiff_t low_stride, int16_t *high, ptrdiff_t high_stride, int len, uint8_t clip)
Definition: cfhd.c:82
#define src
Definition: vp9dsp.c:530
BYTE int const BYTE int int int height
Definition: avisynth_c.h:676
static int width

Definition at line 3873 of file hevc_mc_uni_msa.c.

#define UNI_MC_HV (   PEL,
  DIR,
  WIDTH,
  TAP,
  DIR1 
)
Value:
void ff_hevc_put_hevc_uni_##PEL##_##DIR##WIDTH##_8_msa(uint8_t *dst, \
ptrdiff_t \
dst_stride, \
ptrdiff_t \
src_stride, \
int height, \
intptr_t mx, \
intptr_t my, \
int width) \
{ \
const int8_t *filter_x = ff_hevc_##PEL##_filters[mx - 1]; \
const int8_t *filter_y = ff_hevc_##PEL##_filters[my - 1]; \
\
hevc_##DIR1##_uni_##TAP##t_##WIDTH##w_msa(src, src_stride, dst, \
dst_stride, filter_x, \
filter_y, height); \
}
#define WIDTH
Definition: c93.c:43
#define _(x)
uint8_t
#define src
Definition: vp9dsp.c:530
BYTE int const BYTE int int int height
Definition: avisynth_c.h:676
static int width

Definition at line 3927 of file hevc_mc_uni_msa.c.

Function Documentation

static void copy_width8_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
int32_t  height 
)
static

Definition at line 25 of file hevc_mc_uni_msa.c.

Referenced by copy_width24_msa().

static void copy_width12_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
int32_t  height 
)
static

Definition at line 111 of file hevc_mc_uni_msa.c.

static void copy_16multx8mult_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
int32_t  height,
int32_t  width 
)
static
static void copy_width16_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
int32_t  height 
)
static

Definition at line 152 of file hevc_mc_uni_msa.c.

static void copy_width24_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
int32_t  height 
)
static

Definition at line 186 of file hevc_mc_uni_msa.c.

static void copy_width32_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
int32_t  height 
)
static

Definition at line 194 of file hevc_mc_uni_msa.c.

static void copy_width48_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
int32_t  height 
)
static

Definition at line 238 of file hevc_mc_uni_msa.c.

static void copy_width64_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
int32_t  height 
)
static

Definition at line 245 of file hevc_mc_uni_msa.c.

static void common_hz_8t_4x4_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter,
uint8_t  rnd_val 
)
static

Definition at line 360 of file hevc_mc_uni_msa.c.

Referenced by common_hz_8t_4w_msa().

static void common_hz_8t_4x8_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter,
uint8_t  rnd_val 
)
static

Definition at line 391 of file hevc_mc_uni_msa.c.

Referenced by common_hz_8t_4w_msa().

static void common_hz_8t_4x16_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter,
uint8_t  rnd_val 
)
static

Definition at line 431 of file hevc_mc_uni_msa.c.

Referenced by common_hz_8t_4w_msa().

static void common_hz_8t_4w_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter,
int32_t  height,
uint8_t  rnd_val 
)
static

Definition at line 491 of file hevc_mc_uni_msa.c.

static void common_hz_8t_8x4_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter,
uint8_t  rnd_val 
)
static

Definition at line 505 of file hevc_mc_uni_msa.c.

Referenced by common_hz_8t_8w_msa().

static void common_hz_8t_8x8mult_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter,
int32_t  height,
uint8_t  rnd_val 
)
static

Definition at line 538 of file hevc_mc_uni_msa.c.

Referenced by common_hz_8t_8w_msa().

static void common_hz_8t_8w_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter,
int32_t  height,
uint8_t  rnd_val 
)
static

Definition at line 577 of file hevc_mc_uni_msa.c.

static void common_hz_8t_12w_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter,
int32_t  height,
uint8_t  rnd_val 
)
static

Definition at line 590 of file hevc_mc_uni_msa.c.

static void common_hz_8t_16w_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter,
int32_t  height,
uint8_t  rnd_val 
)
static

Definition at line 653 of file hevc_mc_uni_msa.c.

static void common_hz_8t_24w_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter,
int32_t  height,
uint8_t  rnd_val 
)
static

Definition at line 695 of file hevc_mc_uni_msa.c.

static void common_hz_8t_32w_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter,
int32_t  height,
uint8_t  rnd_val 
)
static

Definition at line 772 of file hevc_mc_uni_msa.c.

static void common_hz_8t_48w_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter,
int32_t  height,
uint8_t  rnd_val 
)
static

Definition at line 834 of file hevc_mc_uni_msa.c.

static void common_hz_8t_64w_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter,
int32_t  height,
uint8_t  rnd_val 
)
static

Definition at line 918 of file hevc_mc_uni_msa.c.

static void common_vt_8t_4w_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter,
int32_t  height,
uint8_t  rnd_val 
)
static

Definition at line 978 of file hevc_mc_uni_msa.c.

static void common_vt_8t_8w_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter,
int32_t  height,
uint8_t  rnd_val 
)
static

Definition at line 1033 of file hevc_mc_uni_msa.c.

Referenced by common_vt_8t_24w_msa().

static void common_vt_8t_12w_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter,
int32_t  height,
uint8_t  rnd_val 
)
static

Definition at line 1091 of file hevc_mc_uni_msa.c.

static void common_vt_8t_16w_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter,
int32_t  height,
uint8_t  rnd_val 
)
static

Definition at line 1175 of file hevc_mc_uni_msa.c.

static void common_vt_8t_16w_mult_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter,
int32_t  height,
uint8_t  rnd_val,
int32_t  width 
)
static
static void common_vt_8t_24w_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter,
int32_t  height,
uint8_t  rnd_val 
)
static

Definition at line 1348 of file hevc_mc_uni_msa.c.

static void common_vt_8t_32w_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter,
int32_t  height,
uint8_t  rnd_val 
)
static

Definition at line 1359 of file hevc_mc_uni_msa.c.

static void common_vt_8t_48w_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter,
int32_t  height,
uint8_t  rnd_val 
)
static

Definition at line 1367 of file hevc_mc_uni_msa.c.

static void common_vt_8t_64w_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter,
int32_t  height,
uint8_t  rnd_val 
)
static

Definition at line 1375 of file hevc_mc_uni_msa.c.

static void hevc_hv_uni_8t_4w_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter_x,
const int8_t *  filter_y,
int32_t  height 
)
static

Definition at line 1383 of file hevc_mc_uni_msa.c.

Referenced by hevc_hv_uni_8t_12w_msa().

static void hevc_hv_uni_8t_8multx2mult_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter_x,
const int8_t *  filter_y,
int32_t  height,
int32_t  width 
)
static
static void hevc_hv_uni_8t_8w_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter_x,
const int8_t *  filter_y,
int32_t  height 
)
static

Definition at line 1650 of file hevc_mc_uni_msa.c.

static void hevc_hv_uni_8t_12w_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter_x,
const int8_t *  filter_y,
int32_t  height 
)
static

Definition at line 1662 of file hevc_mc_uni_msa.c.

static void hevc_hv_uni_8t_16w_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter_x,
const int8_t *  filter_y,
int32_t  height 
)
static

Definition at line 1677 of file hevc_mc_uni_msa.c.

static void hevc_hv_uni_8t_24w_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter_x,
const int8_t *  filter_y,
int32_t  height 
)
static

Definition at line 1689 of file hevc_mc_uni_msa.c.

static void hevc_hv_uni_8t_32w_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter_x,
const int8_t *  filter_y,
int32_t  height 
)
static

Definition at line 1701 of file hevc_mc_uni_msa.c.

static void hevc_hv_uni_8t_48w_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter_x,
const int8_t *  filter_y,
int32_t  height 
)
static

Definition at line 1713 of file hevc_mc_uni_msa.c.

static void hevc_hv_uni_8t_64w_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter_x,
const int8_t *  filter_y,
int32_t  height 
)
static

Definition at line 1725 of file hevc_mc_uni_msa.c.

static void common_hz_4t_4x2_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter,
uint8_t  rnd_val 
)
static

Definition at line 1737 of file hevc_mc_uni_msa.c.

Referenced by common_hz_4t_4w_msa().

static void common_hz_4t_4x4_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter,
uint8_t  rnd_val 
)
static

Definition at line 1766 of file hevc_mc_uni_msa.c.

Referenced by common_hz_4t_4w_msa().

static void common_hz_4t_4x8_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter,
uint8_t  rnd_val 
)
static

Definition at line 1795 of file hevc_mc_uni_msa.c.

Referenced by common_hz_4t_4w_msa().

static void common_hz_4t_4x16_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter,
uint8_t  rnd_val 
)
static

Definition at line 1833 of file hevc_mc_uni_msa.c.

Referenced by common_hz_4t_4w_msa().

static void common_hz_4t_4w_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter,
int32_t  height,
uint8_t  rnd_val 
)
static

Definition at line 1885 of file hevc_mc_uni_msa.c.

static void common_hz_4t_6w_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter,
int32_t  height,
uint8_t  rnd_val 
)
static

Definition at line 1902 of file hevc_mc_uni_msa.c.

static void common_hz_4t_8x2mult_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter,
int32_t  height,
uint8_t  rnd_val 
)
static

Definition at line 1940 of file hevc_mc_uni_msa.c.

Referenced by common_hz_4t_8w_msa().

static void common_hz_4t_8x4mult_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter,
int32_t  height,
uint8_t  rnd_val 
)
static

Definition at line 1977 of file hevc_mc_uni_msa.c.

Referenced by common_hz_4t_8w_msa().

static void common_hz_4t_8w_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter,
int32_t  height,
uint8_t  rnd_val 
)
static

Definition at line 2014 of file hevc_mc_uni_msa.c.

static void common_hz_4t_12w_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter,
int32_t  height,
uint8_t  rnd_val 
)
static

Definition at line 2028 of file hevc_mc_uni_msa.c.

static void common_hz_4t_16w_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter,
int32_t  height,
uint8_t  rnd_val 
)
static

Definition at line 2085 of file hevc_mc_uni_msa.c.

static void common_hz_4t_24w_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter,
int32_t  height,
uint8_t  rnd_val 
)
static

Definition at line 2136 of file hevc_mc_uni_msa.c.

static void common_hz_4t_32w_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter,
int32_t  height,
uint8_t  rnd_val 
)
static

Definition at line 2222 of file hevc_mc_uni_msa.c.

static void common_vt_4t_4x2_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter,
uint8_t  rnd_val 
)
static

Definition at line 2277 of file hevc_mc_uni_msa.c.

Referenced by common_vt_4t_4w_msa().

static void common_vt_4t_4x4multiple_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter,
int32_t  height,
uint8_t  rnd_val 
)
static

Definition at line 2310 of file hevc_mc_uni_msa.c.

Referenced by common_vt_4t_4w_msa().

static void common_vt_4t_4w_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter,
int32_t  height,
uint8_t  rnd_val 
)
static

Definition at line 2359 of file hevc_mc_uni_msa.c.

static void common_vt_4t_6w_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter,
int32_t  height,
uint8_t  rnd_val 
)
static

Definition at line 2372 of file hevc_mc_uni_msa.c.

static void common_vt_4t_8x2_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter,
uint8_t  rnd_val 
)
static

Definition at line 2426 of file hevc_mc_uni_msa.c.

Referenced by common_vt_4t_8w_msa().

static void common_vt_4t_8x6_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter,
uint8_t  rnd_val 
)
static

Definition at line 2454 of file hevc_mc_uni_msa.c.

Referenced by common_vt_4t_8w_msa().

static void common_vt_4t_8x4mult_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter,
int32_t  height,
uint8_t  rnd_val 
)
static

Definition at line 2508 of file hevc_mc_uni_msa.c.

Referenced by common_vt_4t_8w_msa().

static void common_vt_4t_8w_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter,
int32_t  height,
uint8_t  rnd_val 
)
static

Definition at line 2556 of file hevc_mc_uni_msa.c.

static void common_vt_4t_12w_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter,
int32_t  height,
uint8_t  rnd_val 
)
static

Definition at line 2571 of file hevc_mc_uni_msa.c.

static void common_vt_4t_16w_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter,
int32_t  height,
uint8_t  rnd_val 
)
static

Definition at line 2636 of file hevc_mc_uni_msa.c.

static void common_vt_4t_24w_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter,
int32_t  height,
uint8_t  rnd_val 
)
static

Definition at line 2697 of file hevc_mc_uni_msa.c.

static void common_vt_4t_32w_mult_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter,
int32_t  height,
uint8_t  rnd_val,
int32_t  width 
)
static

Definition at line 2812 of file hevc_mc_uni_msa.c.

Referenced by common_vt_4t_32w_msa().

static void common_vt_4t_32w_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter,
int32_t  height,
uint8_t  rnd_val 
)
static

Definition at line 2917 of file hevc_mc_uni_msa.c.

static void hevc_hv_uni_4t_4x2_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter_x,
const int8_t *  filter_y,
int32_t  height 
)
static

Definition at line 2926 of file hevc_mc_uni_msa.c.

Referenced by hevc_hv_uni_4t_4w_msa().

static void hevc_hv_uni_4t_4x4_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter_x,
const int8_t *  filter_y,
int32_t  height 
)
static

Definition at line 3007 of file hevc_mc_uni_msa.c.

Referenced by hevc_hv_uni_4t_4w_msa().

static void hevc_hv_uni_4t_4multx8mult_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter_x,
const int8_t *  filter_y,
int32_t  height 
)
static

Definition at line 3107 of file hevc_mc_uni_msa.c.

Referenced by hevc_hv_uni_4t_4w_msa().

static void hevc_hv_uni_4t_4w_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter_x,
const int8_t *  filter_y,
int32_t  height 
)
static

Definition at line 3256 of file hevc_mc_uni_msa.c.

Referenced by hevc_hv_uni_4t_12w_msa().

static void hevc_hv_uni_4t_6w_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter_x,
const int8_t *  filter_y,
int32_t  height 
)
static

Definition at line 3276 of file hevc_mc_uni_msa.c.

static void hevc_hv_uni_4t_8x2_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter_x,
const int8_t *  filter_y,
int32_t  height 
)
static

Definition at line 3398 of file hevc_mc_uni_msa.c.

Referenced by hevc_hv_uni_4t_8w_msa().

static void hevc_hv_uni_4t_8x6_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter_x,
const int8_t *  filter_y,
int32_t  height 
)
static

Definition at line 3487 of file hevc_mc_uni_msa.c.

Referenced by hevc_hv_uni_4t_8w_msa().

static void hevc_hv_uni_4t_8w_mult_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter_x,
const int8_t *  filter_y,
int32_t  height,
int32_t  width 
)
static
static void hevc_hv_uni_4t_8w_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter_x,
const int8_t *  filter_y,
int32_t  height 
)
static

Definition at line 3779 of file hevc_mc_uni_msa.c.

static void hevc_hv_uni_4t_12w_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter_x,
const int8_t *  filter_y,
int32_t  height 
)
static

Definition at line 3799 of file hevc_mc_uni_msa.c.

static void hevc_hv_uni_4t_16w_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter_x,
const int8_t *  filter_y,
int32_t  height 
)
static

Definition at line 3814 of file hevc_mc_uni_msa.c.

static void hevc_hv_uni_4t_24w_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter_x,
const int8_t *  filter_y,
int32_t  height 
)
static

Definition at line 3826 of file hevc_mc_uni_msa.c.

static void hevc_hv_uni_4t_32w_msa ( uint8_t src,
int32_t  src_stride,
uint8_t dst,
int32_t  dst_stride,
const int8_t *  filter_x,
const int8_t *  filter_y,
int32_t  height 
)
static

Definition at line 3838 of file hevc_mc_uni_msa.c.

UNI_MC_COPY ( )
UNI_MC_COPY ( 12  )
UNI_MC_COPY ( 16  )
UNI_MC_COPY ( 24  )
UNI_MC_COPY ( 32  )
UNI_MC_COPY ( 48  )
UNI_MC_COPY ( 64  )
UNI_MC ( qpel  ,
h  ,
,
,
hz  ,
mx   
)
UNI_MC ( qpel  ,
h  ,
,
,
hz  ,
mx   
)
UNI_MC ( qpel  ,
h  ,
12  ,
,
hz  ,
mx   
)
UNI_MC ( qpel  ,
h  ,
16  ,
,
hz  ,
mx   
)
UNI_MC ( qpel  ,
h  ,
24  ,
,
hz  ,
mx   
)
UNI_MC ( qpel  ,
h  ,
32  ,
,
hz  ,
mx   
)
UNI_MC ( qpel  ,
h  ,
48  ,
,
hz  ,
mx   
)
UNI_MC ( qpel  ,
h  ,
64  ,
,
hz  ,
mx   
)
UNI_MC ( qpel  ,
,
,
,
vt  ,
my   
)
UNI_MC ( qpel  ,
,
,
,
vt  ,
my   
)
UNI_MC ( qpel  ,
,
12  ,
,
vt  ,
my   
)
UNI_MC ( qpel  ,
,
16  ,
,
vt  ,
my   
)
UNI_MC ( qpel  ,
,
24  ,
,
vt  ,
my   
)
UNI_MC ( qpel  ,
,
32  ,
,
vt  ,
my   
)
UNI_MC ( qpel  ,
,
48  ,
,
vt  ,
my   
)
UNI_MC ( qpel  ,
,
64  ,
,
vt  ,
my   
)
UNI_MC ( epel  ,
h  ,
,
,
hz  ,
mx   
)
UNI_MC ( epel  ,
h  ,
,
,
hz  ,
mx   
)
UNI_MC ( epel  ,
h  ,
,
,
hz  ,
mx   
)
UNI_MC ( epel  ,
h  ,
12  ,
,
hz  ,
mx   
)
UNI_MC ( epel  ,
h  ,
16  ,
,
hz  ,
mx   
)
UNI_MC ( epel  ,
h  ,
24  ,
,
hz  ,
mx   
)
UNI_MC ( epel  ,
h  ,
32  ,
,
hz  ,
mx   
)
UNI_MC ( epel  ,
,
,
,
vt  ,
my   
)
UNI_MC ( epel  ,
,
,
,
vt  ,
my   
)
UNI_MC ( epel  ,
,
,
,
vt  ,
my   
)
UNI_MC ( epel  ,
,
12  ,
,
vt  ,
my   
)
UNI_MC ( epel  ,
,
16  ,
,
vt  ,
my   
)
UNI_MC ( epel  ,
,
24  ,
,
vt  ,
my   
)
UNI_MC ( epel  ,
,
32  ,
,
vt  ,
my   
)
UNI_MC_HV ( qpel  ,
hv  ,
,
,
hv   
)
UNI_MC_HV ( qpel  ,
hv  ,
,
,
hv   
)
UNI_MC_HV ( qpel  ,
hv  ,
12  ,
,
hv   
)
UNI_MC_HV ( qpel  ,
hv  ,
16  ,
,
hv   
)
UNI_MC_HV ( qpel  ,
hv  ,
24  ,
,
hv   
)
UNI_MC_HV ( qpel  ,
hv  ,
32  ,
,
hv   
)
UNI_MC_HV ( qpel  ,
hv  ,
48  ,
,
hv   
)
UNI_MC_HV ( qpel  ,
hv  ,
64  ,
,
hv   
)
UNI_MC_HV ( epel  ,
hv  ,
,
,
hv   
)
UNI_MC_HV ( epel  ,
hv  ,
,
,
hv   
)
UNI_MC_HV ( epel  ,
hv  ,
,
,
hv   
)
UNI_MC_HV ( epel  ,
hv  ,
12  ,
,
hv   
)
UNI_MC_HV ( epel  ,
hv  ,
16  ,
,
hv   
)
UNI_MC_HV ( epel  ,
hv  ,
24  ,
,
hv   
)
UNI_MC_HV ( epel  ,
hv  ,
32  ,
,
hv   
)

Variable Documentation

const uint8_t mc_filt_mask_arr[16 *3]
static