diff --git a/libswscale/x86/output.asm b/libswscale/x86/output.asm index 3b8e56d2bd..646a11dbab 100644 --- a/libswscale/x86/output.asm +++ b/libswscale/x86/output.asm @@ -59,7 +59,7 @@ SECTION .text %macro yuv2planeX_fn 3 %if ARCH_X86_32 -%define cntr_reg filterq +%define cntr_reg fltsizeq %define movsx mov %else %define cntr_reg r11 @@ -146,7 +146,7 @@ cglobal yuv2planeX_%1, %3, 7, %2, filter, fltsize, src, dst, w, dither, offset mova m1, [yuv2yuvX_%1_start] mova m2, m1 %endif ; %1 == 8/9/10/16 - movsx cntr_reg, fltsizem + movsx cntr_reg, r1m ; FIXME should be fltsizem, but the assembler does the wrong thing b/c of SUB above .filterloop_ %+ %%i: ; input pixels mov r6, [srcq+gprsize*cntr_reg-2*gprsize] diff --git a/tests/fate/image.mak b/tests/fate/image.mak index f5b648e3b9..60c6cb26ef 100644 --- a/tests/fate/image.mak +++ b/tests/fate/image.mak @@ -16,6 +16,9 @@ fate-sunraster-1bit-rle: CMD = framecrc -i $(SAMPLES)/sunraster/lena-1bit-rle.su FATE_SUNRASTER += fate-sunraster-8bit-raw fate-sunraster-8bit-raw: CMD = framecrc -i $(SAMPLES)/sunraster/lena-8bit-raw.sun -pix_fmt rgb24 +FATE_SUNRASTER += fate-sunraster-8bit_gray-raw +fate-sunraster-8bit_gray-raw: CMD = framecrc -i $(SAMPLES)/sunraster/gray.ras + FATE_SUNRASTER += fate-sunraster-8bit-rle fate-sunraster-8bit-rle: CMD = framecrc -i $(SAMPLES)/sunraster/lena-8bit-rle.sun -pix_fmt rgb24 diff --git a/tests/ref/fate/sunraster-8bit_gray-raw b/tests/ref/fate/sunraster-8bit_gray-raw new file mode 100644 index 0000000000..455af5f612 --- /dev/null +++ b/tests/ref/fate/sunraster-8bit_gray-raw @@ -0,0 +1,2 @@ +#tb 0: 1/25 +0, 0, 0, 1, 786432, 0x5859b48e