int16_t * col)
DCTELEM * col)
static inline void idctSparseColPut (UINT8 *dest, int line_size,                                      int16_t * col){	int a0, a1, a2, a3, b0, b1, b2, b3;        UINT8 *cm = cropTbl + MAX_NEG_CROP;        /* XXX: I did that only to give same values as previous code */	a0 = W4 * (col[8*0] + ((1<<(COL_SHIFT-1))/W4));	a1 = a0;	a2 = a0;	a3 = a0;        a0 +=  + W2*col[8*2];        a1 +=  + W6*col[8*2];        a2 +=  - W6*col[8*2];        a3 +=  - W2*col[8*2];        MUL16(b0, W1, col[8*1]);        MUL16(b1, W3, col[8*1]);        MUL16(b2, W5, col[8*1]);        MUL16(b3, W7, col[8*1]);        MAC16(b0, + W3, col[8*3]);        MAC16(b1, - W7, col[8*3]);        MAC16(b2, - W1, col[8*3]);        MAC16(b3, - W5, col[8*3]);	if(col[8*4]){            a0 += + W4*col[8*4];            a1 += - W4*col[8*4];            a2 += - W4*col[8*4];            a3 += + W4*col[8*4];	}	if (col[8*5]) {            MAC16(b0, + W5, col[8*5]);            MAC16(b1, - W1, col[8*5]);            MAC16(b2, + W7, col[8*5]);            MAC16(b3, + W3, col[8*5]);	}	if(col[8*6]){            a0 += + W6*col[8*6];            a1 += - W2*col[8*6];            a2 += + W2*col[8*6];            a3 += - W6*col[8*6];	}	if (col[8*7]) {            MAC16(b0, + W7, col[8*7]);            MAC16(b1, - W5, col[8*7]);            MAC16(b2, + W3, col[8*7]);            MAC16(b3, - W1, col[8*7]);	}        dest[0] = cm[(a0 + b0) >> COL_SHIFT];        dest += line_size;        dest[0] = cm[(a1 + b1) >> COL_SHIFT];        dest += line_size;        dest[0] = cm[(a2 + b2) >> COL_SHIFT];        dest += line_size;        dest[0] = cm[(a3 + b3) >> COL_SHIFT];        dest += line_size;        dest[0] = cm[(a3 - b3) >> COL_SHIFT];        dest += line_size;        dest[0] = cm[(a2 - b2) >> COL_SHIFT];        dest += line_size;        dest[0] = cm[(a1 - b1) >> COL_SHIFT];        dest += line_size;        dest[0] = cm[(a0 - b0) >> COL_SHIFT];}