28                                   ptrdiff_t stride_dst, ptrdiff_t stride_src,
 
   29                                   const int16_t *sao_offset_val, 
int sao_left_class,
 
   72 #define PUT_PIXELS(name) \ 
   73     void name(int16_t *dst, const uint8_t *src, \ 
   74                                 ptrdiff_t srcstride, int height, \ 
   75                                 intptr_t mx, intptr_t my, int width) 
   88 static void (*
put_hevc_qpel_neon[4][4])(int16_t *dst, ptrdiff_t dststride, 
const uint8_t *
src, ptrdiff_t srcstride,
 
   90 static void (*
put_hevc_qpel_uw_neon[4][4])(uint8_t *dst, ptrdiff_t dststride, 
const uint8_t *_src, ptrdiff_t _srcstride,
 
   97                                       const uint8_t *
src, ptrdiff_t srcstride, 
const int16_t *
src2,
 
   99 #define QPEL_FUNC(name) \ 
  100     void name(int16_t *dst, ptrdiff_t dststride, const uint8_t *src, ptrdiff_t srcstride, \ 
  101                                    int height, int width) 
  120 #define QPEL_FUNC_UW_PIX(name) \ 
  121     void name(uint8_t *dst, ptrdiff_t dststride, const uint8_t *_src, ptrdiff_t _srcstride, \ 
  122                                    int height, intptr_t mx, intptr_t my, int width) 
  130 #undef QPEL_FUNC_UW_PIX 
  132 #define QPEL_FUNC_UW(name) \ 
  133     void name(uint8_t *dst, ptrdiff_t dststride, const uint8_t *_src, ptrdiff_t _srcstride, \ 
  134               int width, int height, const int16_t* src2, ptrdiff_t src2stride) 
  156                                   ptrdiff_t stride_dst, ptrdiff_t stride_src,
 
  157                                   const int16_t *sao_offset_val, 
int sao_left_class,
 
  160     const uint8_t *
src = _src;
 
  164     for (k = 0; k < 4; k++) {
 
  165         offset_table[(k + sao_left_class) & 31] = sao_offset_val[k + 1];
 
  172                                     int a_stride, 
int b_stride, 
const int16_t *sao_offset_val, 
const uint8_t *edge_idx);
 
  176     static uint8_t edge_idx[] = { 1, 2, 0, 3, 4 };
 
  177     static const int8_t 
pos[4][2][2] = {
 
  178         { { -1,  0 }, {  1, 0 } }, 
 
  179         { {  0, -1 }, {  0, 1 } }, 
 
  180         { { -1, -1 }, {  1, 1 } }, 
 
  181         { {  1, -1 }, { -1, 1 } }, 
 
  184     const uint8_t *
src = _src;
 
  185     int a_stride, b_stride;
 
  188     a_stride = 
pos[eo][0][0] + 
pos[eo][0][1] * stride_src;
 
  189     b_stride = 
pos[eo][1][0] + 
pos[eo][1][1] * stride_src;
 
  273         for (x = 3; x < 10; x++) {
 
  274             if (x == 4) 
continue;
 
  285         c->put_hevc_qpel[0][0][0]  = ff_hevc_put_pixels_w2_neon_8;
 
  286         c->put_hevc_qpel[1][0][0]  = ff_hevc_put_pixels_w4_neon_8;
 
  287         c->put_hevc_qpel[2][0][0]  = ff_hevc_put_pixels_w6_neon_8;
 
  288         c->put_hevc_qpel[3][0][0]  = ff_hevc_put_pixels_w8_neon_8;
 
  289         c->put_hevc_qpel[4][0][0]  = ff_hevc_put_pixels_w12_neon_8;
 
  290         c->put_hevc_qpel[5][0][0]  = ff_hevc_put_pixels_w16_neon_8;
 
  291         c->put_hevc_qpel[6][0][0]  = ff_hevc_put_pixels_w24_neon_8;
 
  292         c->put_hevc_qpel[7][0][0]  = ff_hevc_put_pixels_w32_neon_8;
 
  293         c->put_hevc_qpel[8][0][0]  = ff_hevc_put_pixels_w48_neon_8;
 
  294         c->put_hevc_qpel[9][0][0]  = ff_hevc_put_pixels_w64_neon_8;
 
  296         c->put_hevc_qpel_uni[1][0][0]  = ff_hevc_put_qpel_uw_pixels_w4_neon_8;
 
  297         c->put_hevc_qpel_uni[3][0][0]  = ff_hevc_put_qpel_uw_pixels_w8_neon_8;
 
  298         c->put_hevc_qpel_uni[5][0][0]  = ff_hevc_put_qpel_uw_pixels_w16_neon_8;
 
  299         c->put_hevc_qpel_uni[6][0][0]  = ff_hevc_put_qpel_uw_pixels_w24_neon_8;
 
  300         c->put_hevc_qpel_uni[7][0][0]  = ff_hevc_put_qpel_uw_pixels_w32_neon_8;
 
  301         c->put_hevc_qpel_uni[8][0][0]  = ff_hevc_put_qpel_uw_pixels_w48_neon_8;
 
  302         c->put_hevc_qpel_uni[9][0][0]  = ff_hevc_put_qpel_uw_pixels_w64_neon_8;