From f532640c4964c733e1ea262c26310fd025a229a8 Mon Sep 17 00:00:00 2001 From: Steve Underwood Date: Fri, 1 Nov 2013 02:44:11 +0800 Subject: [PATCH] Fixed an embedded assembly language constraint issue --- libs/spandsp/src/vector_int.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/libs/spandsp/src/vector_int.c b/libs/spandsp/src/vector_int.c index 66166e52eb..c2ed12f98e 100644 --- a/libs/spandsp/src/vector_int.c +++ b/libs/spandsp/src/vector_int.c @@ -147,7 +147,7 @@ SPAN_DECLARE(int32_t) vec_dot_prodi16(const int16_t x[], const int16_t y[], int " emms;\n" : "=a" (z) : "S" (x), "D" (y), "a" (n) - : "cc" + : "cc", "rdx", "mm0", "mm1", "mm2" ); #elif defined(__GNUC__) && defined(SPANDSP_USE_MMX) && defined(__i386__) __asm__ __volatile__( @@ -245,7 +245,7 @@ SPAN_DECLARE(int32_t) vec_dot_prodi16(const int16_t x[], const int16_t y[], int " emms;\n" : "=a" (z) : "S" (x), "D" (y), "a" (n) - : "cc" + : "cc", "edx", "mm0", "mm1", "mm2" ); #else int i; @@ -436,7 +436,7 @@ SPAN_DECLARE(int32_t) vec_min_maxi16(const int16_t x[], int n, int16_t out[]) " emms;\n" : "=a" (max) : "S" (x), "a" (n), "d" (out), [lower] "m" (lower_bound), [upper] "m" (upper_bound) - : "ecx" + : "ecx", "mm0", "mm1", "mm2", "mm3", "mm4" ); #elif defined(__GNUC__) && defined(SPANDSP_USE_MMX) && defined(__i386__) static const int32_t lower_bound = 0x80008000; @@ -589,7 +589,7 @@ SPAN_DECLARE(int32_t) vec_min_maxi16(const int16_t x[], int n, int16_t out[]) " emms;\n" : "=a" (max) : "S" (x), "a" (n), "d" (out), [lower] "m" (lower_bound), [upper] "m" (upper_bound) - : "ecx" + : "ecx", "mm0", "mm1", "mm2", "mm3", "mm4" ); #else int i;