cogl-fixed: In ARM asm don't allow GCC to reuse input regs for outputs

Add register constraints to prevent asm statement complaints like:

  {standard input}:382: rdhi, rdlo and rm must all be different

Signed-off-by: Donn Seeley <donn.seeley@windriver.com>
Reviewed-by: Neil Roberts <neil@linux.intel.com>
This commit is contained in:
Roy.Li 2013-06-14 12:17:25 +01:00 committed by Neil Roberts
parent 839cf49763
commit b32d135299

View File

@ -819,7 +819,7 @@ cogl_fixed_mul (CoglFixed a,
__asm__ ("smull %0, %1, %2, %3 \n" __asm__ ("smull %0, %1, %2, %3 \n"
"mov %0, %0, lsr %4 \n" "mov %0, %0, lsr %4 \n"
"add %1, %0, %1, lsl %5 \n" "add %1, %0, %1, lsl %5 \n"
: "=r"(res_hi), "=r"(res_low) \ : "=&r"(res_hi), "=&r"(res_low) \
: "r"(a), "r"(b), "i"(COGL_FIXED_Q), "i"(32 - COGL_FIXED_Q)); : "r"(a), "r"(b), "i"(COGL_FIXED_Q), "i"(32 - COGL_FIXED_Q));
return (CoglFixed) res_low; return (CoglFixed) res_low;