mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-01-18 13:25:56 +00:00
videomixer: Use movzbl instead of movzxb for moving one byte to a l register
For some reason latest gcc/binutils accept movzxb here while movzbl would be correct and is the only thing accepted by older gcc/binutils. Fixes bug #604679.
This commit is contained in:
parent
9e45038d8d
commit
0a0f7ecc16
1 changed files with 1 additions and 1 deletions
|
@ -290,7 +290,7 @@ gst_videomixer_blend_ayuv_ayuv_mmx (guint8 * src, gint xpos, gint ypos,
|
||||||
"psrlq $56 , %%mm5 \n\t" /* mm5 = 0x0...0ff */
|
"psrlq $56 , %%mm5 \n\t" /* mm5 = 0x0...0ff */
|
||||||
"xor %%ecx , %%ecx \n\t" /* ecx = 0 */
|
"xor %%ecx , %%ecx \n\t" /* ecx = 0 */
|
||||||
"1: \n\t"
|
"1: \n\t"
|
||||||
"movzxb (%2) , %%eax \n\t" /* eax == source alpha */
|
"movzbl (%2) , %%eax \n\t" /* eax == source alpha */
|
||||||
"imul %4 , %%eax \n\t" /* eax = source alpha * alpha */
|
"imul %4 , %%eax \n\t" /* eax = source alpha * alpha */
|
||||||
"sar $8 , %%eax \n\t" /* eax = (source alpha * alpha) / 256 */
|
"sar $8 , %%eax \n\t" /* eax = (source alpha * alpha) / 256 */
|
||||||
"movd %%eax , %%mm0 \n\t" /* mm0 = apply alpha */
|
"movd %%eax , %%mm0 \n\t" /* mm0 = apply alpha */
|
||||||
|
|
Loading…
Reference in a new issue