- Fixed clobberlist of asm command. (Required for correct handling of coverage testing)

This commit is contained in:
Paul Bakker 2009-07-08 19:49:01 +00:00
parent e9276cc857
commit 40fe2b02db

View File

@ -51,14 +51,16 @@
asm( "movl %0, %%ebx " :: "m" (b)); asm( "movl %0, %%ebx " :: "m" (b));
#define MULADDC_CORE \ #define MULADDC_CORE \
asm( "lodsl " ); \ asm( " \
asm( "mull %ebx " ); \ lodsl; \
asm( "addl %ecx, %eax " ); \ mull %%ebx; \
asm( "adcl $0, %edx " ); \ addl %%ecx, %%eax; \
asm( "addl (%edi), %eax " ); \ adcl $0, %%edx; \
asm( "adcl $0, %edx " ); \ addl (%%edi), %%eax; \
asm( "movl %edx, %ecx " ); \ adcl $0, %%edx; \
asm( "stosl " ); movl %%edx, %%ecx; \
stosl; " ::: \
"%eax", "%ebx", "%ecx", "%edx", "%edi", "esi");
#if defined(POLARSSL_HAVE_SSE2) #if defined(POLARSSL_HAVE_SSE2)
@ -139,8 +141,7 @@
asm( "movl %0, %%ebx " :: "m" (t)); \ asm( "movl %0, %%ebx " :: "m" (t)); \
asm( "movl %%ecx, %0 " : "=m" (c)); \ asm( "movl %%ecx, %0 " : "=m" (c)); \
asm( "movl %%edi, %0 " : "=m" (d)); \ asm( "movl %%edi, %0 " : "=m" (d)); \
asm( "movl %%esi, %0 " : "=m" (s) :: \ asm( "movl %%esi, %0 " : "=m" (s));
"eax", "ecx", "edx", "esi", "edi" );
#endif /* SSE2 */ #endif /* SSE2 */
#endif /* i386 */ #endif /* i386 */