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
1.4
Jason Parker 17 years ago
parent 8f6e8e6711
commit 831a7f2720

@ -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"
);

Loading…
Cancel
Save