From ec5e76cab4d9d19ab25c402cf1a4e6e42ab1a146 Mon Sep 17 00:00:00 2001 From: David Schleef Date: Mon, 31 Mar 2008 22:06:14 +0000 Subject: [PATCH] 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. --- ChangeLog | 5 +++++ gst/goom/xmmx.c | 6 +++--- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index f29cf13..a9d5019 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2008-03-31 David Schleef + + * gst/goom/xmmx.c: Fix constraints on asm code so that it + compiles consistently. Fixes #522278. + 2008-03-27 Tim-Philipp Müller Patch by: Brian Cameron diff --git a/gst/goom/xmmx.c b/gst/goom/xmmx.c index 1d68ef6..365b4e2 100644 --- a/gst/goom/xmmx.c +++ b/gst/goom/xmmx.c @@ -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 */ /* -- 2.7.4