Revision 6e1c66bc postproc/yuv2rgb_template.c

View differences:

postproc/yuv2rgb_template.c
143 143
	uint8_t *_py = src[0] + y*srcStride[0];
144 144
	uint8_t *_pu = src[1] + (y>>1)*srcStride[1];
145 145
	uint8_t *_pv = src[2] + (y>>1)*srcStride[2];
146
	int index= -h_size/2;
146
	long index= -h_size/2;
147 147

  
148 148
	b5Dither= dither8[y&1];
149 149
	g6Dither= dither4[y&1];
......
204 204

  
205 205
		     MOVNTQ " %%mm5, 8 (%1);" /* store pixel 4-7 */
206 206
		     
207
		     "addl $16, %1			\n\t"
208
		     "addl $4, %0			\n\t"
207
		     "add $16, %1			\n\t"
208
		     "add $4, %0			\n\t"
209 209
		     " js 1b				\n\t"
210 210
		     
211 211
		     : "+r" (index), "+r" (_image)
......
238 238
	uint8_t *_py = src[0] + y*srcStride[0];
239 239
	uint8_t *_pu = src[1] + (y>>1)*srcStride[1];
240 240
	uint8_t *_pv = src[2] + (y>>1)*srcStride[2];
241
	int index= -h_size/2;
241
	long index= -h_size/2;
242 242

  
243 243
	b5Dither= dither8[y&1];
244 244
	g6Dither= dither4[y&1];
......
295 295

  
296 296
		     MOVNTQ " %%mm5, 8 (%1);" /* store pixel 4-7 */
297 297
		     
298
		     "addl $16, %1			\n\t"
299
		     "addl $4, %0			\n\t"
298
		     "add $16, %1			\n\t"
299
		     "add $4, %0			\n\t"
300 300
		     " js 1b				\n\t"
301 301
		     : "+r" (index), "+r" (_image)
302 302
		     : "r" (_pu - index), "r" (_pv - index), "r"(&c->redDither), "r" (_py - 2*index)
......
326 326
	uint8_t *_py = src[0] + y*srcStride[0];
327 327
	uint8_t *_pu = src[1] + (y>>1)*srcStride[1];
328 328
	uint8_t *_pv = src[2] + (y>>1)*srcStride[2];
329
	int index= -h_size/2;
329
	long index= -h_size/2;
330 330

  
331 331
	    /* this mmx assembly code deals with SINGLE scan line at a time, it convert 8
332 332
	       pixels in each iteration */
......
440 440
			"pxor %%mm4, %%mm4		\n\t"
441 441
#endif
442 442
		     
443
		     "addl $24, %1			\n\t"
444
		     "addl $4, %0			\n\t"
443
		     "add $24, %1			\n\t"
444
		     "add $4, %0			\n\t"
445 445
		     " js 1b				\n\t"
446 446
		     
447 447
		     : "+r" (index), "+r" (_image)
......
472 472
	uint8_t *_py = src[0] + y*srcStride[0];
473 473
	uint8_t *_pu = src[1] + (y>>1)*srcStride[1];
474 474
	uint8_t *_pv = src[2] + (y>>1)*srcStride[2];
475
	int index= -h_size/2;
475
	long index= -h_size/2;
476 476

  
477 477
	    /* this mmx assembly code deals with SINGLE scan line at a time, it convert 8
478 478
	       pixels in each iteration */
......
526 526
		     "pxor %%mm4, %%mm4;" /* zero mm4 */
527 527
		     "movq 8 (%5, %0, 2), %%mm6;" /* Load 8 Y Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 */
528 528

  
529
		     "addl $32, %1			\n\t"
530
		     "addl $4, %0			\n\t"
529
		     "add $32, %1			\n\t"
530
		     "add $4, %0			\n\t"
531 531
		     " js 1b				\n\t"
532 532
		     
533 533
		     : "+r" (index), "+r" (_image)

Also available in: Unified diff