fix fastmath no asm casts to shorter sizes
This commit is contained in:
parent
31b03c8a2d
commit
6ba7743fb3
@ -437,9 +437,10 @@ __asm__( \
|
|||||||
|
|
||||||
#define INNERMUL \
|
#define INNERMUL \
|
||||||
do { fp_word t; \
|
do { fp_word t; \
|
||||||
_c[0] = t = ((fp_word)_c[0] + (fp_word)cy) + \
|
t = ((fp_word)_c[0] + (fp_word)cy) + \
|
||||||
(((fp_word)mu) * ((fp_word)*tmpm++)); \
|
(((fp_word)mu) * ((fp_word)*tmpm++)); \
|
||||||
cy = (t >> DIGIT_BIT); \
|
_c[0] = (fp_digit)t; \
|
||||||
|
cy = (fp_digit)(t >> DIGIT_BIT); \
|
||||||
} while (0)
|
} while (0)
|
||||||
|
|
||||||
#define PROPCARRY \
|
#define PROPCARRY \
|
||||||
@ -975,8 +976,9 @@ __asm__( \
|
|||||||
/* multiplies point i and j, updates carry "c1" and digit c2 */
|
/* multiplies point i and j, updates carry "c1" and digit c2 */
|
||||||
#define SQRADD(i, j) \
|
#define SQRADD(i, j) \
|
||||||
do { fp_word t; \
|
do { fp_word t; \
|
||||||
t = c0 + ((fp_word)i) * ((fp_word)j); c0 = t; \
|
t = c0 + ((fp_word)i) * ((fp_word)j); c0 = (fp_digit)t; \
|
||||||
t = c1 + (t >> DIGIT_BIT); c1 = t; c2 += t >> DIGIT_BIT; \
|
t = c1 + (t >> DIGIT_BIT); c1 = (fp_digit)t; \
|
||||||
|
c2 +=(fp_digit) (t >> DIGIT_BIT); \
|
||||||
} while (0);
|
} while (0);
|
||||||
|
|
||||||
|
|
||||||
@ -984,10 +986,12 @@ __asm__( \
|
|||||||
#define SQRADD2(i, j) \
|
#define SQRADD2(i, j) \
|
||||||
do { fp_word t; \
|
do { fp_word t; \
|
||||||
t = ((fp_word)i) * ((fp_word)j); \
|
t = ((fp_word)i) * ((fp_word)j); \
|
||||||
tt = (fp_word)c0 + t; c0 = tt; \
|
tt = (fp_word)c0 + t; c0 = (fp_digit)tt; \
|
||||||
tt = (fp_word)c1 + (tt >> DIGIT_BIT); c1 = tt; c2 += tt >> DIGIT_BIT; \
|
tt = (fp_word)c1 + (tt >> DIGIT_BIT); c1 = (fp_digit)tt; \
|
||||||
tt = (fp_word)c0 + t; c0 = tt; \
|
c2 +=(fp_digit)( tt >> DIGIT_BIT); \
|
||||||
tt = (fp_word)c1 + (tt >> DIGIT_BIT); c1 = tt; c2 += tt >> DIGIT_BIT; \
|
tt = (fp_word)c0 + t; c0 = (fp_digit)tt; \
|
||||||
|
tt = (fp_word)c1 + (tt >> DIGIT_BIT); c1 = (fp_digit)tt; \
|
||||||
|
c2 +=(fp_digit) (tt >> DIGIT_BIT); \
|
||||||
} while (0);
|
} while (0);
|
||||||
|
|
||||||
#define SQRADDSC(i, j) \
|
#define SQRADDSC(i, j) \
|
||||||
@ -1276,8 +1280,9 @@ ____asm__( \
|
|||||||
|
|
||||||
#define MULADD(i, j) \
|
#define MULADD(i, j) \
|
||||||
do { fp_word t; \
|
do { fp_word t; \
|
||||||
t = (fp_word)c0 + ((fp_word)i) * ((fp_word)j); c0 = t; \
|
t = (fp_word)c0 + ((fp_word)i) * ((fp_word)j); c0 = (fp_digit)t; \
|
||||||
t = (fp_word)c1 + (t >> DIGIT_BIT); c1 = t; c2 += t >> DIGIT_BIT; \
|
t = (fp_word)c1 + (t >> DIGIT_BIT); \
|
||||||
|
c1 = (fp_digit)t; c2 += (fp_digit)(t >> DIGIT_BIT); \
|
||||||
} while (0);
|
} while (0);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
Loading…
Reference in New Issue
Block a user