Fix -O0 build for Aarch64 bignum multiplication.
This commit is contained in:
parent
05cff953c9
commit
cb260bb30d
1 changed files with 9 additions and 9 deletions
|
@ -204,20 +204,20 @@
|
|||
asm(
|
||||
|
||||
#define MULADDC_CORE \
|
||||
"ldr x4, [%3], #8 \n\t" \
|
||||
"ldr x5, [%4] \n\t" \
|
||||
"mul x6, x4, %6 \n\t" \
|
||||
"umulh x7, x4, %6 \n\t" \
|
||||
"ldr x4, [%2], #8 \n\t" \
|
||||
"ldr x5, [%1] \n\t" \
|
||||
"mul x6, x4, %3 \n\t" \
|
||||
"umulh x7, x4, %3 \n\t" \
|
||||
"adds x5, x5, x6 \n\t" \
|
||||
"adc x7, x7, xzr \n\t" \
|
||||
"adds x5, x5, %5 \n\t" \
|
||||
"adds x5, x5, %0 \n\t" \
|
||||
"adc %0, x7, xzr \n\t" \
|
||||
"str x5, [%1], #8 \n\t"
|
||||
|
||||
#define MULADDC_STOP \
|
||||
: "+r" (c), "=r" (d), "=r" (s) \
|
||||
: "r" (s), "r" (d), "r" (c), "r" (b) \
|
||||
: "x4", "x5", "x6", "x7", "cc" \
|
||||
#define MULADDC_STOP \
|
||||
: "+r" (c), "+r" (d), "+r" (s) \
|
||||
: "r" (b) \
|
||||
: "x4", "x5", "x6", "x7", "cc" \
|
||||
);
|
||||
|
||||
#endif /* Aarch64 */
|
||||
|
|
Loading…
Reference in a new issue