rem: unsigned int *iptr;
context: renderVGradient(unsigned width, unsigned height, int r0, int g0, int b0,		int rf, int gf, int bf){    int i, j;    unsigned long r, g, b, dr, dg, db;    RImage *image;    unsigned char *ptr;    unsigned int *iptr;    unsigned char rr, gg, bb;    image = RCreateImage(width, height, False);    if (!image) {	return NULL;    }        iptr = (unsigned int*)ptr = image->data;    r = r0<<16;    g = g0<<16;    b = b0<<16;    dr = ((rf-r0)<<16)/(int)height;    dg = ((gf-g0)<<16)/(int)height;    db = ((bf-b0)<<16)/(int)height;    for (i=0; i<height; i++) {	rr = r>>16;	gg = g>>16;	bb = b>>16;	for (j=0; j<width/8; j++) {	    *(ptr++) = rr; *(ptr++) = gg; *(ptr++) = bb;	    *(ptr++) = rr; *(ptr++) = gg; *(ptr++) = bb;	    *(ptr++) = rr; *(ptr++) = gg; *(ptr++) = bb;	    *(ptr++) = rr; *(ptr++) = gg; *(ptr++) = bb;	    *(ptr++) = rr; *(ptr++) = gg; *(ptr++) = bb;	    *(ptr++) = rr; *(ptr++) = gg; *(ptr++) = bb;	    *(ptr++) = rr; *(ptr++) = gg; *(ptr++) = bb;	    *(ptr++) = rr; *(ptr++) = gg; *(ptr++) = bb;	}	switch (width%8) {	 case 7: *(ptr++) = rr; *(ptr++) = gg; *(ptr++) = bb;	 case 6: *(ptr++) = rr; *(ptr++) = gg; *(ptr++) = bb;	 case 5: *(ptr++) = rr; *(ptr++) = gg; *(ptr++) = bb;	 case 4: *(ptr++) = rr; *(ptr++) = gg; *(ptr++) = bb;	 case 3: *(ptr++) = rr; *(ptr++) = gg; *(ptr++) = bb;	 case 2: *(ptr++) = rr; *(ptr++) = gg; *(ptr++) = bb;	 case 1: *(ptr++) = rr; *(ptr++) = gg; *(ptr++) = bb;	}        r+=dr;        g+=dg;        b+=db;    }    return image;}