9 #ifndef BOTAN_MP_ASM_INTERNAL_H__
10 #define BOTAN_MP_ASM_INTERNAL_H__
12 #include <botan/internal/mp_asm.h>
21 inline word
word_add(word x, word y, word* carry)
26 *carry = c1 | (z < *carry);
33 inline word
word8_add2(word x[8],
const word y[8], word carry)
50 const word y[8], word carry)
66 inline word
word_sub(word x, word y, word* carry)
71 *carry = c1 | (z > t0);
78 inline word
word8_sub2(word x[8],
const word y[8], word carry)
100 x[4] =
word_sub(y[4], x[4], &carry);
101 x[5] =
word_sub(y[5], x[5], &carry);
102 x[6] =
word_sub(y[6], x[6], &carry);
103 x[7] =
word_sub(y[7], x[7], &carry);
111 const word y[8], word carry)
113 z[0] =
word_sub(x[0], y[0], &carry);
114 z[1] =
word_sub(x[1], y[1], &carry);
115 z[2] =
word_sub(x[2], y[2], &carry);
116 z[3] =
word_sub(x[3], y[3], &carry);
117 z[4] =
word_sub(x[4], y[4], &carry);
118 z[5] =
word_sub(x[5], y[5], &carry);
119 z[6] =
word_sub(x[6], y[6], &carry);
120 z[7] =
word_sub(x[7], y[7], &carry);
159 inline word
word8_madd3(word z[8],
const word x[8], word y, word carry)
180 *w2 += (*w1 < carry) ? 1 : 0;
192 word top = (b >> (BOTAN_MP_WORD_BITS-1));
194 b |= (a >> (BOTAN_MP_WORD_BITS-1));
word word8_sub2_rev(word x[8], const word y[8], word carry)
word word8_add2(word x[8], const word y[8], word carry)
word word8_linmul3(word z[8], const word x[8], word y, word carry)
word word_madd3(word a, word b, word c, word *d)
word word8_sub2(word x[8], const word y[8], word carry)
word word_madd2(word a, word b, word *c)
word word8_madd3(word z[8], const word x[8], word y, word carry)
word word8_linmul2(word x[8], word y, word carry)
void word3_muladd(word *w2, word *w1, word *w0, word a, word b)
word word8_add3(word z[8], const word x[8], const word y[8], word carry)
word word_sub(word x, word y, word *carry)
void word3_muladd_2(word *w2, word *w1, word *w0, word a, word b)
word word_add(word x, word y, word *carry)
word word8_sub3(word z[8], const word x[8], const word y[8], word carry)