Commit ec5e76ca authored by David Schleef's avatar David Schleef

gst/goom/xmmx.c: Fix constraints on asm code so that it compiles consistently. Fixes #522278.

Original commit message from CVS:
* gst/goom/xmmx.c: Fix constraints on asm code so that it
compiles consistently.  Fixes #522278.
parent 01c237e9
2008-03-31 David Schleef <ds@schleef.org>
* gst/goom/xmmx.c: Fix constraints on asm code so that it
compiles consistently. Fixes #522278.
2008-03-27 Tim-Philipp Müller <tim at centricular dot net>
Patch by: Brian Cameron <brian.cameron at sun dot com>
......
......@@ -74,12 +74,12 @@ zoom_filter_xmmx (int prevX, int prevY,
* modified = mm0,mm1,mm2
*/
asm volatile ("#1 \n\t movq %[brutS], %%mm0" "#1 \n\t movq %[brutD], %%mm1" "#1 \n\t psubd %%mm0, %%mm1" /* mm1 = D - S */
asm volatile ("#1 \n\t movq 0(%[brutS]), %%mm0" "#1 \n\t movq 0(%[brutD]), %%mm1" "#1 \n\t psubd %%mm0, %%mm1" /* mm1 = D - S */
"#1 \n\t movq %%mm1, %%mm2" /* mm2 = D - S */
"#1 \n\t pslld $16, %%mm1" "#1 \n\t pmullw %%mm6, %%mm2" "#1 \n\t pmulhuw %%mm6, %%mm1" "#1 \n\t pslld $16, %%mm0" "#1 \n\t paddd %%mm2, %%mm1" /* mm1 = (D - S) * buffratio >> 16 */
"#1 \n\t paddd %%mm1, %%mm0" /* mm0 = S + mm1 */
"#1 \n\t psrld $16, %%mm0"::[brutS] "g" (brutS[loop])
,[brutD] "g" (brutD[loop])
"#1 \n\t psrld $16, %%mm0"::[brutS] "r" (&brutS[loop]),
[brutD] "r" (&brutD[loop])
); /* mm0 = S */
/*
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment