ref: 830fab4aacc7ff6bc5456d935f15f773f6367f0d
parent: dca1dfb44be688da802604635a151d38235be993
author: mmhoffm <mmhoffm>
date: Tue Sep 11 16:34:01 EDT 2007
a0,a1 potential clobbers + hidding local var
--- a/libfaad/fixed.h
+++ b/libfaad/fixed.h
@@ -27,7 +27,7 @@
** Commercial non-GPL licensing of this software is possible.
** For more info contact Nero AG through Mpeg4AAClicense@nero.com.
**
-** $Id: fixed.h,v 1.29 2007/09/11 18:21:28 mmhoffm Exp $
+** $Id: fixed.h,v 1.30 2007/09/11 20:34:01 mmhoffm Exp $
**/
#ifndef __FIXED_H__
@@ -247,21 +247,21 @@
}
#else
#ifdef __BFIN__
-#define _MulHigh(X,Y) ({ int xxo; \
+#define _MulHigh(X,Y) ({ int __xxo; \
asm ( \
"a1 = %2.H * %1.L (IS,M);\n\t" \
"a0 = %1.H * %2.H, a1+= %1.H * %2.L (IS,M);\n\t"\
"a1 = a1 >>> 16;\n\t" \
"%0 = (a0 += a1);\n\t" \
- : "=d" (xxo) : "d" (X), "d" (Y)); xxo; })
+ : "=d" (__xxo) : "d" (X), "d" (Y) : "A0","A1"); __xxo; })
-#define MUL_F(X,Y) ({ int xxo; \
+#define MUL_F(X,Y) ({ int __xxo; \
asm ( \
"a1 = %2.H * %1.L (M);\n\t" \
"a0 = %1.H * %2.H, a1+= %1.H * %2.L (M);\n\t" \
"a1 = a1 >>> 16;\n\t" \
"%0 = (a0 += a1);\n\t" \
- : "=d" (xxo) : "d" (X), "d" (Y)); xxo; })
+ : "=d" (__xxo) : "d" (X), "d" (Y) : "A0","A1"); __xxo; })
#else
#define _MulHigh(A,B) (real_t)(((int64_t)(A)*(int64_t)(B)+(1 << (FRAC_SIZE-1))) >> FRAC_SIZE)
#define MUL_F(A,B) (real_t)(((int64_t)(A)*(int64_t)(B)+(1 << (FRAC_BITS-1))) >> FRAC_BITS)