comparison libswscale/yuv2rgb_template.c @ 24577:00966f09c33b

cosmetic (get rid of _ at the start of local variable names)
author michael
date Mon, 24 Sep 2007 07:31:43 +0000
parents 1ddf3b0122fb
children 2ad528dd42a0
comparison
equal deleted inserted replaced
24576:6704a924d4aa 24577:00966f09c33b
135 135
136 __asm__ __volatile__ ("pxor %mm4, %mm4;" /* zero mm4 */ ); 136 __asm__ __volatile__ ("pxor %mm4, %mm4;" /* zero mm4 */ );
137 //printf("%X %X %X %X %X %X %X %X %X %X\n", (int)&c->redDither, (int)&b5Dither, (int)src[0], (int)src[1], (int)src[2], (int)dst[0], 137 //printf("%X %X %X %X %X %X %X %X %X %X\n", (int)&c->redDither, (int)&b5Dither, (int)src[0], (int)src[1], (int)src[2], (int)dst[0],
138 //srcStride[0],srcStride[1],srcStride[2],dstStride[0]); 138 //srcStride[0],srcStride[1],srcStride[2],dstStride[0]);
139 for (y= 0; y<srcSliceH; y++ ) { 139 for (y= 0; y<srcSliceH; y++ ) {
140 uint8_t *_image = dst[0] + (y+srcSliceY)*dstStride[0]; 140 uint8_t *image = dst[0] + (y+srcSliceY)*dstStride[0];
141 uint8_t *_py = src[0] + y*srcStride[0]; 141 uint8_t *py = src[0] + y*srcStride[0];
142 uint8_t *_pu = src[1] + (y>>1)*srcStride[1]; 142 uint8_t *pu = src[1] + (y>>1)*srcStride[1];
143 uint8_t *_pv = src[2] + (y>>1)*srcStride[2]; 143 uint8_t *pv = src[2] + (y>>1)*srcStride[2];
144 long index= -h_size/2; 144 long index= -h_size/2;
145 145
146 b5Dither= dither8[y&1]; 146 b5Dither= dither8[y&1];
147 g6Dither= dither4[y&1]; 147 g6Dither= dither4[y&1];
148 g5Dither= dither8[y&1]; 148 g5Dither= dither8[y&1];
204 204
205 "add $16, %1 \n\t" 205 "add $16, %1 \n\t"
206 "add $4, %0 \n\t" 206 "add $4, %0 \n\t"
207 " js 1b \n\t" 207 " js 1b \n\t"
208 208
209 : "+r" (index), "+r" (_image) 209 : "+r" (index), "+r" (image)
210 : "r" (_pu - index), "r" (_pv - index), "r"(&c->redDither), "r" (_py - 2*index) 210 : "r" (pu - index), "r" (pv - index), "r"(&c->redDither), "r" (py - 2*index)
211 ); 211 );
212 } 212 }
213 213
214 __asm__ __volatile__ (EMMS); 214 __asm__ __volatile__ (EMMS);
215 215
230 230
231 __asm__ __volatile__ ("pxor %mm4, %mm4;" /* zero mm4 */ ); 231 __asm__ __volatile__ ("pxor %mm4, %mm4;" /* zero mm4 */ );
232 //printf("%X %X %X %X %X %X %X %X %X %X\n", (int)&c->redDither, (int)&b5Dither, (int)src[0], (int)src[1], (int)src[2], (int)dst[0], 232 //printf("%X %X %X %X %X %X %X %X %X %X\n", (int)&c->redDither, (int)&b5Dither, (int)src[0], (int)src[1], (int)src[2], (int)dst[0],
233 //srcStride[0],srcStride[1],srcStride[2],dstStride[0]); 233 //srcStride[0],srcStride[1],srcStride[2],dstStride[0]);
234 for (y= 0; y<srcSliceH; y++ ) { 234 for (y= 0; y<srcSliceH; y++ ) {
235 uint8_t *_image = dst[0] + (y+srcSliceY)*dstStride[0]; 235 uint8_t *image = dst[0] + (y+srcSliceY)*dstStride[0];
236 uint8_t *_py = src[0] + y*srcStride[0]; 236 uint8_t *py = src[0] + y*srcStride[0];
237 uint8_t *_pu = src[1] + (y>>1)*srcStride[1]; 237 uint8_t *pu = src[1] + (y>>1)*srcStride[1];
238 uint8_t *_pv = src[2] + (y>>1)*srcStride[2]; 238 uint8_t *pv = src[2] + (y>>1)*srcStride[2];
239 long index= -h_size/2; 239 long index= -h_size/2;
240 240
241 b5Dither= dither8[y&1]; 241 b5Dither= dither8[y&1];
242 g6Dither= dither4[y&1]; 242 g6Dither= dither4[y&1];
243 g5Dither= dither8[y&1]; 243 g5Dither= dither8[y&1];
294 MOVNTQ " %%mm5, 8 (%1);" /* store pixel 4-7 */ 294 MOVNTQ " %%mm5, 8 (%1);" /* store pixel 4-7 */
295 295
296 "add $16, %1 \n\t" 296 "add $16, %1 \n\t"
297 "add $4, %0 \n\t" 297 "add $4, %0 \n\t"
298 " js 1b \n\t" 298 " js 1b \n\t"
299 : "+r" (index), "+r" (_image) 299 : "+r" (index), "+r" (image)
300 : "r" (_pu - index), "r" (_pv - index), "r"(&c->redDither), "r" (_py - 2*index) 300 : "r" (pu - index), "r" (pv - index), "r"(&c->redDither), "r" (py - 2*index)
301 ); 301 );
302 } 302 }
303 303
304 __asm__ __volatile__ (EMMS); 304 __asm__ __volatile__ (EMMS);
305 return srcSliceH; 305 return srcSliceH;
318 if(h_size*3 > FFABS(dstStride[0])) h_size-=8; 318 if(h_size*3 > FFABS(dstStride[0])) h_size-=8;
319 319
320 __asm__ __volatile__ ("pxor %mm4, %mm4;" /* zero mm4 */ ); 320 __asm__ __volatile__ ("pxor %mm4, %mm4;" /* zero mm4 */ );
321 321
322 for (y= 0; y<srcSliceH; y++ ) { 322 for (y= 0; y<srcSliceH; y++ ) {
323 uint8_t *_image = dst[0] + (y+srcSliceY)*dstStride[0]; 323 uint8_t *image = dst[0] + (y+srcSliceY)*dstStride[0];
324 uint8_t *_py = src[0] + y*srcStride[0]; 324 uint8_t *py = src[0] + y*srcStride[0];
325 uint8_t *_pu = src[1] + (y>>1)*srcStride[1]; 325 uint8_t *pu = src[1] + (y>>1)*srcStride[1];
326 uint8_t *_pv = src[2] + (y>>1)*srcStride[2]; 326 uint8_t *pv = src[2] + (y>>1)*srcStride[2];
327 long index= -h_size/2; 327 long index= -h_size/2;
328 328
329 /* this mmx assembly code deals with SINGLE scan line at a time, it convert 8 329 /* this mmx assembly code deals with SINGLE scan line at a time, it convert 8
330 pixels in each iteration */ 330 pixels in each iteration */
331 __asm__ __volatile__ ( 331 __asm__ __volatile__ (
440 440
441 "add $24, %1 \n\t" 441 "add $24, %1 \n\t"
442 "add $4, %0 \n\t" 442 "add $4, %0 \n\t"
443 " js 1b \n\t" 443 " js 1b \n\t"
444 444
445 : "+r" (index), "+r" (_image) 445 : "+r" (index), "+r" (image)
446 : "r" (_pu - index), "r" (_pv - index), "r"(&c->redDither), "r" (_py - 2*index) 446 : "r" (pu - index), "r" (pv - index), "r"(&c->redDither), "r" (py - 2*index)
447 ); 447 );
448 } 448 }
449 449
450 __asm__ __volatile__ (EMMS); 450 __asm__ __volatile__ (EMMS);
451 return srcSliceH; 451 return srcSliceH;
464 if(h_size*4 > FFABS(dstStride[0])) h_size-=8; 464 if(h_size*4 > FFABS(dstStride[0])) h_size-=8;
465 465
466 __asm__ __volatile__ ("pxor %mm4, %mm4;" /* zero mm4 */ ); 466 __asm__ __volatile__ ("pxor %mm4, %mm4;" /* zero mm4 */ );
467 467
468 for (y= 0; y<srcSliceH; y++ ) { 468 for (y= 0; y<srcSliceH; y++ ) {
469 uint8_t *_image = dst[0] + (y+srcSliceY)*dstStride[0]; 469 uint8_t *image = dst[0] + (y+srcSliceY)*dstStride[0];
470 uint8_t *_py = src[0] + y*srcStride[0]; 470 uint8_t *py = src[0] + y*srcStride[0];
471 uint8_t *_pu = src[1] + (y>>1)*srcStride[1]; 471 uint8_t *pu = src[1] + (y>>1)*srcStride[1];
472 uint8_t *_pv = src[2] + (y>>1)*srcStride[2]; 472 uint8_t *pv = src[2] + (y>>1)*srcStride[2];
473 long index= -h_size/2; 473 long index= -h_size/2;
474 474
475 /* this mmx assembly code deals with SINGLE scan line at a time, it convert 8 475 /* this mmx assembly code deals with SINGLE scan line at a time, it convert 8
476 pixels in each iteration */ 476 pixels in each iteration */
477 __asm__ __volatile__ ( 477 __asm__ __volatile__ (
526 526
527 "add $32, %1 \n\t" 527 "add $32, %1 \n\t"
528 "add $4, %0 \n\t" 528 "add $4, %0 \n\t"
529 " js 1b \n\t" 529 " js 1b \n\t"
530 530
531 : "+r" (index), "+r" (_image) 531 : "+r" (index), "+r" (image)
532 : "r" (_pu - index), "r" (_pv - index), "r"(&c->redDither), "r" (_py - 2*index) 532 : "r" (pu - index), "r" (pv - index), "r"(&c->redDither), "r" (py - 2*index)
533 ); 533 );
534 } 534 }
535 535
536 __asm__ __volatile__ (EMMS); 536 __asm__ __volatile__ (EMMS);
537 return srcSliceH; 537 return srcSliceH;