From d16ebec7957f2805f603bbb94eb0df4a1fc5a0a8 Mon Sep 17 00:00:00 2001 From: Yuriy Kaminskiy Date: Sat, 24 Sep 2011 01:33:37 +0200 Subject: postproc: Fix compilation failure. libpostproc/postprocess_template.c: In function 'dering_MMX2': libpostproc/postprocess_template.c:1045:5: error: can't find a register in class 'GENERAL_REGS' while reloading 'asm' libpostproc/postprocess_template.c:1045:5: error: 'asm' operand has impossible constraints --- libpostproc/postprocess_template.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'libpostproc/postprocess_template.c') diff --git a/libpostproc/postprocess_template.c b/libpostproc/postprocess_template.c index 21a8626696..7559815fed 100644 --- a/libpostproc/postprocess_template.c +++ b/libpostproc/postprocess_template.c @@ -1132,8 +1132,10 @@ FIND_MIN_MAX((%0, %1, 8)) #endif "movq %%mm6, %%mm0 \n\t" // max "psubb %%mm7, %%mm6 \n\t" // max - min - "movd %%mm6, %%ecx \n\t" - "cmpb "MANGLE(deringThreshold)", %%cl \n\t" + "push %k4 \n\t" + "movd %%mm6, %k4 \n\t" + "cmpb "MANGLE(deringThreshold)", %b4 \n\t" + "pop %k4 \n\t" " jb 1f \n\t" PAVGB(%%mm0, %%mm7) // a=(max + min)/2 "punpcklbw %%mm7, %%mm7 \n\t" @@ -1261,8 +1263,8 @@ DERING_CORE((%%REGd, %1, 2),(%0, %1, 8) ,%%mm0,%%mm2,%%mm4,%%mm1,%%mm3,%%mm5, DERING_CORE((%0, %1, 8) ,(%%REGd, %1, 4),%%mm2,%%mm4,%%mm0,%%mm3,%%mm5,%%mm1,%%mm6,%%mm7) "1: \n\t" - : : "r" (src), "r" ((x86_reg)stride), "m" (c->pQPb), "m"(c->pQPb2), "r"(tmp) - : "%"REG_a, "%"REG_d, "%"REG_c + : : "r" (src), "r" ((x86_reg)stride), "m" (c->pQPb), "m"(c->pQPb2), "q"(tmp) + : "%"REG_a, "%"REG_d ); #else //HAVE_MMX2 || HAVE_AMD3DNOW int y; -- cgit v1.2.3