From: Jason Parker Date: Fri, 28 Mar 2008 21:45:35 +0000 (+0000) Subject: Allow gsm to compile correctly on x86 with gcc4 optimizations. X-Git-Tag: 1.4.20-rc1~107 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=831a7f27200089741f78fa8ef8df9bf107cf8fde;p=thirdparty%2Fasterisk.git Allow gsm to compile correctly on x86 with gcc4 optimizations. (closes issue #11243) Reported by: whiskerp Patches: 11243-maybe-asm.diff uploaded by qwell (license 4) Tested by: Seggy (IRC) Note: While I did write this patch, I would not have found this if fossil had not reported and fixed issue #12253. A huge thanks to him for helping to (indirectly) find the problem here. git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@111856 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/codecs/gsm/inc/private.h b/codecs/gsm/inc/private.h index 7021030aca..80ecbc59fb 100644 --- a/codecs/gsm/inc/private.h +++ b/codecs/gsm/inc/private.h @@ -105,7 +105,7 @@ static __inline__ int GSM_L_ADD(int a, int b) __asm__ __volatile__( "addl %2,%0; jno 0f; movl $0x7fffffff,%0; adcl $0,%0; 0:" - : "=r" (a) + : "=&r" (a) : "0" (a), "ir" (b) : "cc" ); @@ -116,7 +116,7 @@ static __inline__ short GSM_ADD(short a, short b) { __asm__ __volatile__( "addw %2,%0; jno 0f; movw $0x7fff,%0; adcw $0,%0; 0:" - : "=r" (a) + : "=&r" (a) : "0" (a), "ir" (b) : "cc" ); @@ -127,7 +127,7 @@ static __inline__ short GSM_SUB(short a, short b) { __asm__ __volatile__( "subw %2,%0; jno 0f; movw $0x7fff,%0; adcw $0,%0; 0:" - : "=r" (a) + : "=&r" (a) : "0" (a), "ir" (b) : "cc" );