c->pix_norm = pix_norm_c;
c->sse[0]= sse16_c; c->sse[1]= sse8_c;
void dsputil_init(DSPContext* c, unsigned mask){    static int init_done = 0;    int i;    if (!init_done) {	for(i=0;i<256;i++) cropTbl[i + MAX_NEG_CROP] = i;	for(i=0;i<MAX_NEG_CROP;i++) {	    cropTbl[i] = 0;	    cropTbl[i + MAX_NEG_CROP + 256] = 255;	}	for(i=0;i<512;i++) {	    squareTbl[i] = (i - 256) * (i - 256);	}	for(i=0; i<64; i++) inv_zigzag_direct16[ff_zigzag_direct[i]]= i+1;	init_done = 1;    }    c->get_pixels = get_pixels_c;    c->diff_pixels = diff_pixels_c;    c->put_pixels_clamped = put_pixels_clamped_c;    c->add_pixels_clamped = add_pixels_clamped_c;    c->gmc1 = gmc1_c;    c->gmc = gmc_c;    c->clear_blocks = clear_blocks_c;    c->pix_sum = pix_sum_c;    c->pix_norm1 = pix_norm1_c;    c->pix_norm = pix_norm_c;    /* TODO [0] 16  [1] 8 */    c->pix_abs16x16     = pix_abs16x16_c;    c->pix_abs16x16_x2  = pix_abs16x16_x2_c;    c->pix_abs16x16_y2  = pix_abs16x16_y2_c;    c->pix_abs16x16_xy2 = pix_abs16x16_xy2_c;    c->pix_abs8x8     = pix_abs8x8_c;    c->pix_abs8x8_x2  = pix_abs8x8_x2_c;    c->pix_abs8x8_y2  = pix_abs8x8_y2_c;    c->pix_abs8x8_xy2 = pix_abs8x8_xy2_c;#define dspfunc(PFX, IDX, NUM) \    c->PFX ## _pixels_tab[IDX][0] = PFX ## _pixels ## NUM ## _c;     \    c->PFX ## _pixels_tab[IDX][1] = PFX ## _pixels ## NUM ## _x2_c;  \    c->PFX ## _pixels_tab[IDX][2] = PFX ## _pixels ## NUM ## _y2_c;  \    c->PFX ## _pixels_tab[IDX][3] = PFX ## _pixels ## NUM ## _xy2_c    dspfunc(put, 0, 16);    dspfunc(put_no_rnd, 0, 16);    dspfunc(put, 1, 8);    dspfunc(put_no_rnd, 1, 8);    dspfunc(avg, 0, 16);    dspfunc(avg_no_rnd, 0, 16);    dspfunc(avg, 1, 8);    dspfunc(avg_no_rnd, 1, 8);#undef dspfunc#define dspfunc(PFX, IDX, NUM) \    c->PFX ## _pixels_tab[IDX][ 0] = PFX ## NUM ## _mc00_c; \    c->PFX ## _pixels_tab[IDX][ 1] = PFX ## NUM ## _mc10_c; \    c->PFX ## _pixels_tab[IDX][ 2] = PFX ## NUM ## _mc20_c; \    c->PFX ## _pixels_tab[IDX][ 3] = PFX ## NUM ## _mc30_c; \    c->PFX ## _pixels_tab[IDX][ 4] = PFX ## NUM ## _mc01_c; \    c->PFX ## _pixels_tab[IDX][ 5] = PFX ## NUM ## _mc11_c; \    c->PFX ## _pixels_tab[IDX][ 6] = PFX ## NUM ## _mc21_c; \    c->PFX ## _pixels_tab[IDX][ 7] = PFX ## NUM ## _mc31_c; \    c->PFX ## _pixels_tab[IDX][ 8] = PFX ## NUM ## _mc02_c; \    c->PFX ## _pixels_tab[IDX][ 9] = PFX ## NUM ## _mc12_c; \    c->PFX ## _pixels_tab[IDX][10] = PFX ## NUM ## _mc22_c; \    c->PFX ## _pixels_tab[IDX][11] = PFX ## NUM ## _mc32_c; \    c->PFX ## _pixels_tab[IDX][12] = PFX ## NUM ## _mc03_c; \    c->PFX ## _pixels_tab[IDX][13] = PFX ## NUM ## _mc13_c; \    c->PFX ## _pixels_tab[IDX][14] = PFX ## NUM ## _mc23_c; \    c->PFX ## _pixels_tab[IDX][15] = PFX ## NUM ## _mc33_c    dspfunc(put_qpel, 0, 16);    dspfunc(put_no_rnd_qpel, 0, 16);    dspfunc(avg_qpel, 0, 16);    /* dspfunc(avg_no_rnd_qpel, 0, 16); */    dspfunc(put_qpel, 1, 8);    dspfunc(put_no_rnd_qpel, 1, 8);    dspfunc(avg_qpel, 1, 8);    /* dspfunc(avg_no_rnd_qpel, 1, 8); */#undef dspfunc    c->add_bytes= add_bytes_c;    c->diff_bytes= diff_bytes_c;#ifdef HAVE_MMX    dsputil_init_mmx(c, mask);    if (ff_bit_exact)    {        /* FIXME - AVCodec context should have flag for bitexact match */	/* fprintf(stderr, "\n\n\nff_bit_exact %d\n\n\n\n", ff_bit_exact); */	dsputil_set_bit_exact_mmx(c, mask);    }#endif#ifdef ARCH_ARMV4L    dsputil_init_armv4l(c, mask);#endif#ifdef HAVE_MLIB    dsputil_init_mlib(c, mask);#endif#ifdef ARCH_ALPHA    dsputil_init_alpha(c, mask);#endif#ifdef ARCH_POWERPC    dsputil_init_ppc(c, mask);#endif#ifdef HAVE_MMI    dsputil_init_mmi(c, mask);#endif}