changeset 37086:f19959d0bbc9

Fix libmpcodecs inline asm on ICL. Author: Matt Oliver <protogonoi@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
author michael
date Fri, 02 May 2014 18:36:48 +0000
parents aadeccf8159b
children e476a46c6a2b
files libmpcodecs/vf_fspp.c
diffstat 1 files changed, 12 insertions(+), 5 deletions(-) [+]
line wrap: on
line diff
--- a/libmpcodecs/vf_fspp.c	Mon Apr 28 16:08:54 2014 +0000
+++ b/libmpcodecs/vf_fspp.c	Fri May 02 18:36:48 2014 +0000
@@ -1598,6 +1598,10 @@
 
         : "+S"(data), "+D"(output), "+c"(cnt), "=o"(temps)
         : "d"(thr_adr)
+          NAMED_CONSTRAINTS_ADD(ff_MM_FIX_0_707106781,MM_2,MM_FIX_1_414213562_A,MM_FIX_1_414213562,MM_FIX_0_382683433,
+          ff_MM_FIX_0_541196100,MM_FIX_1_306562965,MM_FIX_0_847759065)
+          NAMED_CONSTRAINTS_ADD(MM_FIX_0_566454497,MM_FIX_0_198912367,MM_FIX_2_613125930,MM_FIX_1_847759065,
+          MM_FIX_1_082392200,ff_MM_FIX_0_541196100,MM_FIX_1_306562965)
         : "%"REG_a
         );
 }
@@ -1867,6 +1871,8 @@
 
         : "+S"(workspace), "+D"(output_adr), "+c"(cnt), "=o"(temps)
         : "a"(output_stride*sizeof(short))
+        NAMED_CONSTRAINTS_ADD(MM_FIX_1_414213562_A,MM_FIX_2_613125930,MM_FIX_1_847759065,MM_FIX_1_082392200,
+        MM_FIX_1_414213562,MM_DESCALE_RND)
         : "%"REG_d
         );
 }
@@ -1974,10 +1980,10 @@
         "movd (%%"REG_S",%%"REG_a",2), %%mm3    \n\t" //5
         "paddw %%mm4, %%mm1            \n\t"
 
-        "movq %%mm5, 0*8+%3            \n\t" //t7
+        "movq %%mm5, %3                \n\t" //t7
         "punpcklbw %%mm7, %%mm3        \n\t"
 
-        "movq %%mm6, 1*8+%3            \n\t" //t6
+        "movq %%mm6, %4                \n\t" //t6
         "movq %%mm2, %%mm4             \n\t"
 
         "movd (%%"REG_S"), %%mm5           \n\t" //3
@@ -2023,7 +2029,7 @@
         "psubw %%mm1, %%mm5            \n\t" //d1
         "movq %%mm0, %%mm6             \n\t"
 
-        "movq 1*8+%3, %%mm1            \n\t"
+        "movq %4, %%mm1                \n\t"
         "punpcklwd %%mm5, %%mm0        \n\t"
 
         "punpckhwd %%mm5, %%mm6        \n\t"
@@ -2047,7 +2053,7 @@
         "movq %%mm7, "DCTSIZE_S"*3*2(%%"REG_D") \n\t"
         "psllw $2, %%mm3              \n\t" //t10
 
-        "movq 0*8+%3, %%mm2           \n\t"
+        "movq %3, %%mm2               \n\t"
         "psllw $2, %%mm4              \n\t" //t11
 
         "pmulhw "MANGLE(MM_FIX_0_707106781)", %%mm4 \n\t" //z3
@@ -2110,8 +2116,9 @@
         "dec %%"REG_c"                   \n\t"
         "jnz 6b                  \n\t"
 
-        : "+S"(pixels), "+D"(data), "+c"(cnt), "=o"(temps)
+        : "+S"(pixels), "+D"(data), "+c"(cnt), "=o"(temps), "=o"(temps[1])
         : "a"(line_size)
+        NAMED_CONSTRAINTS_ADD(ff_MM_FIX_0_707106781,ff_MM_FIX_0_541196100,MM_FIX_0_382683433,MM_FIX_1_306562965)
         : "%"REG_d);
 }