Mercurial > mplayer.hg
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; |