fix clobber list for x86-64 assembler

This commit is contained in:
Steffen Jaeckel 2014-06-12 18:15:44 +02:00
parent be2ca4880d
commit ed1a1e90e9
3 changed files with 9 additions and 9 deletions

View File

@ -62,7 +62,7 @@ asm( \
"movq %%rdx,%1 \n\t" \ "movq %%rdx,%1 \n\t" \
:"=g"(_c[LO]), "=r"(cy) \ :"=g"(_c[LO]), "=r"(cy) \
:"0"(_c[LO]), "1"(cy), "r"(mu), "r"(*tmpm++) \ :"0"(_c[LO]), "1"(cy), "r"(mu), "r"(*tmpm++) \
: "%rax", "%rdx", "%cc") : "%rax", "%rdx", "cc")
#define INNERMUL8 \ #define INNERMUL8 \
asm( \ asm( \
@ -155,7 +155,7 @@ asm( \
\ \
:"=r"(_c), "=r"(cy) \ :"=r"(_c), "=r"(cy) \
: "0"(_c), "1"(cy), "g"(mu), "r"(tmpm)\ : "0"(_c), "1"(cy), "g"(mu), "r"(tmpm)\
: "%rax", "%rdx", "%r10", "%r11", "%cc") : "%rax", "%rdx", "%r10", "%r11", "cc")
#define PROPCARRY \ #define PROPCARRY \
@ -165,7 +165,7 @@ asm( \
"movzbq %%al,%1 \n\t" \ "movzbq %%al,%1 \n\t" \
:"=g"(_c[LO]), "=r"(cy) \ :"=g"(_c[LO]), "=r"(cy) \
:"0"(_c[LO]), "1"(cy) \ :"0"(_c[LO]), "1"(cy) \
: "%rax", "%cc") : "%rax", "cc")
/******************************************************************/ /******************************************************************/
#elif defined(TFM_SSE2) #elif defined(TFM_SSE2)

View File

@ -88,7 +88,7 @@ asm ( \
"addq %%rax,%0 \n\t" \ "addq %%rax,%0 \n\t" \
"adcq %%rdx,%1 \n\t" \ "adcq %%rdx,%1 \n\t" \
"adcq $0,%2 \n\t" \ "adcq $0,%2 \n\t" \
:"=r"(c0), "=r"(c1), "=r"(c2): "0"(c0), "1"(c1), "2"(c2), "g"(i), "g"(j) :"%rax","%rdx","%cc"); :"=r"(c0), "=r"(c1), "=r"(c2): "0"(c0), "1"(c1), "2"(c2), "g"(i), "g"(j) :"%rax","%rdx","cc");
#elif defined(TFM_SSE2) #elif defined(TFM_SSE2)
/* use SSE2 optimizations */ /* use SSE2 optimizations */

View File

@ -109,7 +109,7 @@ asm( \
"addq %%rax,%0 \n\t" \ "addq %%rax,%0 \n\t" \
"adcq %%rdx,%1 \n\t" \ "adcq %%rdx,%1 \n\t" \
"adcq $0,%2 \n\t" \ "adcq $0,%2 \n\t" \
:"=r"(c0), "=r"(c1), "=r"(c2): "0"(c0), "1"(c1), "2"(c2), "g"(i) :"%rax","%rdx","%cc"); :"=r"(c0), "=r"(c1), "=r"(c2): "0"(c0), "1"(c1), "2"(c2), "g"(i) :"%rax","%rdx","cc");
#define SQRADD2(i, j) \ #define SQRADD2(i, j) \
asm( \ asm( \
@ -121,7 +121,7 @@ asm( \
"addq %%rax,%0 \n\t" \ "addq %%rax,%0 \n\t" \
"adcq %%rdx,%1 \n\t" \ "adcq %%rdx,%1 \n\t" \
"adcq $0,%2 \n\t" \ "adcq $0,%2 \n\t" \
:"=r"(c0), "=r"(c1), "=r"(c2): "0"(c0), "1"(c1), "2"(c2), "g"(i), "g"(j) :"%rax","%rdx","%cc"); :"=r"(c0), "=r"(c1), "=r"(c2): "0"(c0), "1"(c1), "2"(c2), "g"(i), "g"(j) :"%rax","%rdx","cc");
#define SQRADDSC(i, j) \ #define SQRADDSC(i, j) \
asm( \ asm( \
@ -130,7 +130,7 @@ asm( \
"movq %%rax,%0 \n\t" \ "movq %%rax,%0 \n\t" \
"movq %%rdx,%1 \n\t" \ "movq %%rdx,%1 \n\t" \
"xorq %2,%2 \n\t" \ "xorq %2,%2 \n\t" \
:"=r"(sc0), "=r"(sc1), "=r"(sc2): "0"(sc0), "1"(sc1), "2"(sc2), "g"(i), "g"(j) :"%rax","%rdx","%cc"); :"=r"(sc0), "=r"(sc1), "=r"(sc2): "0"(sc0), "1"(sc1), "2"(sc2), "g"(i), "g"(j) :"%rax","%rdx","cc");
#define SQRADDAC(i, j) \ #define SQRADDAC(i, j) \
asm( \ asm( \
@ -139,7 +139,7 @@ asm( \
"addq %%rax,%0 \n\t" \ "addq %%rax,%0 \n\t" \
"adcq %%rdx,%1 \n\t" \ "adcq %%rdx,%1 \n\t" \
"adcq $0,%2 \n\t" \ "adcq $0,%2 \n\t" \
:"=r"(sc0), "=r"(sc1), "=r"(sc2): "0"(sc0), "1"(sc1), "2"(sc2), "g"(i), "g"(j) :"%rax","%rdx","%cc"); :"=r"(sc0), "=r"(sc1), "=r"(sc2): "0"(sc0), "1"(sc1), "2"(sc2), "g"(i), "g"(j) :"%rax","%rdx","cc");
#define SQRADDDB \ #define SQRADDDB \
asm( \ asm( \
@ -149,7 +149,7 @@ asm( \
"addq %6,%0 \n\t" \ "addq %6,%0 \n\t" \
"adcq %7,%1 \n\t" \ "adcq %7,%1 \n\t" \
"adcq %8,%2 \n\t" \ "adcq %8,%2 \n\t" \
:"=r"(c0), "=r"(c1), "=r"(c2) : "0"(c0), "1"(c1), "2"(c2), "r"(sc0), "r"(sc1), "r"(sc2) : "%cc"); :"=r"(c0), "=r"(c1), "=r"(c2) : "0"(c0), "1"(c1), "2"(c2), "r"(sc0), "r"(sc1), "r"(sc2) : "cc");
#elif defined(TFM_SSE2) #elif defined(TFM_SSE2)