mirror of
https://github.com/yuzu-emu/unicorn.git
synced 2024-12-23 10:55:34 +00:00
target/m68k: replace LIT64 with UINT64_C macros
In our quest to eliminate the home rolled LIT64 macro we fixup usage inside for m68k's many constants. Backports commit e23263004d5fea809ad0f78c523f498e04ba788f from qemu
This commit is contained in:
parent
dbddafe2df
commit
affde8930a
|
@ -26,7 +26,7 @@
|
|||
|
||||
#define pi_exp 0x4000
|
||||
#define piby2_exp 0x3FFF
|
||||
#define pi_sig LIT64(0xc90fdaa22168c235)
|
||||
#define pi_sig UINT64_C(0xc90fdaa22168c235)
|
||||
|
||||
static floatx80 propagateFloatx80NaNOneArg(floatx80 a, float_status *status)
|
||||
{
|
||||
|
@ -87,7 +87,7 @@ floatx80 floatx80_mod(floatx80 a, floatx80 b, float_status *status)
|
|||
}
|
||||
normalizeFloatx80Subnormal(aSig0, &aExp, &aSig0);
|
||||
}
|
||||
bSig |= LIT64(0x8000000000000000);
|
||||
bSig |= UINT64_C(0x8000000000000000);
|
||||
zSign = aSign;
|
||||
expDiff = aExp - bExp;
|
||||
aSig1 = 0;
|
||||
|
@ -289,7 +289,7 @@ floatx80 floatx80_move(floatx80 a, float_status *status)
|
|||
*/
|
||||
|
||||
#define one_exp 0x3FFF
|
||||
#define one_sig LIT64(0x8000000000000000)
|
||||
#define one_sig UINT64_C(0x8000000000000000)
|
||||
|
||||
/*
|
||||
* Function for compactifying extended double-precision floating point values.
|
||||
|
@ -373,7 +373,7 @@ floatx80 floatx80_lognp1(floatx80 a, float_status *status)
|
|||
k = aExp - 0x3FFF;
|
||||
fp1 = int32_to_floatx80(k, status);
|
||||
|
||||
fSig = (aSig & LIT64(0xFE00000000000000)) | LIT64(0x0100000000000000);
|
||||
fSig = (aSig & UINT64_C(0xFE00000000000000)) | UINT64_C(0x0100000000000000);
|
||||
j = (fSig >> 56) & 0x7E; /* DISPLACEMENT FOR 1/F */
|
||||
|
||||
f = packFloatx80(0, 0x3FFF, fSig); /* F */
|
||||
|
@ -384,7 +384,7 @@ floatx80 floatx80_lognp1(floatx80 a, float_status *status)
|
|||
lp1cont1:
|
||||
/* LP1CONT1 */
|
||||
fp0 = floatx80_mul(fp0, log_tbl[j], status); /* FP0 IS U = (Y-F)/F */
|
||||
logof2 = packFloatx80(0, 0x3FFE, LIT64(0xB17217F7D1CF79AC));
|
||||
logof2 = packFloatx80(0, 0x3FFE, UINT64_C(0xB17217F7D1CF79AC));
|
||||
klog2 = floatx80_mul(fp1, logof2, status); /* FP1 IS K*LOG2 */
|
||||
fp2 = floatx80_mul(fp0, fp0, status); /* FP2 IS V=U*U */
|
||||
|
||||
|
@ -431,7 +431,7 @@ floatx80 floatx80_lognp1(floatx80 a, float_status *status)
|
|||
} else if (compact < 0x3FFEF07D || compact > 0x3FFF8841) {
|
||||
/* |X| < 1/16 or |X| > -1/16 */
|
||||
/* LP1CARE */
|
||||
fSig = (aSig & LIT64(0xFE00000000000000)) | LIT64(0x0100000000000000);
|
||||
fSig = (aSig & UINT64_C(0xFE00000000000000)) | UINT64_C(0x0100000000000000);
|
||||
f = packFloatx80(0, 0x3FFF, fSig); /* F */
|
||||
j = (fSig >> 56) & 0x7E; /* DISPLACEMENT FOR 1/F */
|
||||
|
||||
|
@ -562,7 +562,7 @@ floatx80 floatx80_logn(floatx80 a, float_status *status)
|
|||
k += adjk;
|
||||
fp1 = int32_to_floatx80(k, status);
|
||||
|
||||
fSig = (aSig & LIT64(0xFE00000000000000)) | LIT64(0x0100000000000000);
|
||||
fSig = (aSig & UINT64_C(0xFE00000000000000)) | UINT64_C(0x0100000000000000);
|
||||
j = (fSig >> 56) & 0x7E; /* DISPLACEMENT FOR 1/F */
|
||||
|
||||
f = packFloatx80(0, 0x3FFF, fSig); /* F */
|
||||
|
@ -572,7 +572,7 @@ floatx80 floatx80_logn(floatx80 a, float_status *status)
|
|||
|
||||
/* LP1CONT1 */
|
||||
fp0 = floatx80_mul(fp0, log_tbl[j], status); /* FP0 IS U = (Y-F)/F */
|
||||
logof2 = packFloatx80(0, 0x3FFE, LIT64(0xB17217F7D1CF79AC));
|
||||
logof2 = packFloatx80(0, 0x3FFE, UINT64_C(0xB17217F7D1CF79AC));
|
||||
klog2 = floatx80_mul(fp1, logof2, status); /* FP1 IS K*LOG2 */
|
||||
fp2 = floatx80_mul(fp0, fp0, status); /* FP2 IS V=U*U */
|
||||
|
||||
|
@ -712,7 +712,7 @@ floatx80 floatx80_log10(floatx80 a, float_status *status)
|
|||
status->floatx80_rounding_precision = 80;
|
||||
|
||||
fp0 = floatx80_logn(a, status);
|
||||
fp1 = packFloatx80(0, 0x3FFD, LIT64(0xDE5BD8A937287195)); /* INV_L10 */
|
||||
fp1 = packFloatx80(0, 0x3FFD, UINT64_C(0xDE5BD8A937287195)); /* INV_L10 */
|
||||
|
||||
status->float_rounding_mode = user_rnd_mode;
|
||||
status->floatx80_rounding_precision = user_rnd_prec;
|
||||
|
@ -778,7 +778,7 @@ floatx80 floatx80_log2(floatx80 a, float_status *status)
|
|||
a = int32_to_floatx80(aExp - 0x3FFF, status);
|
||||
} else {
|
||||
fp0 = floatx80_logn(a, status);
|
||||
fp1 = packFloatx80(0, 0x3FFF, LIT64(0xB8AA3B295C17F0BC)); /* INV_L2 */
|
||||
fp1 = packFloatx80(0, 0x3FFF, UINT64_C(0xB8AA3B295C17F0BC)); /* INV_L2 */
|
||||
|
||||
status->float_rounding_mode = user_rnd_mode;
|
||||
status->floatx80_rounding_precision = user_rnd_prec;
|
||||
|
@ -862,7 +862,7 @@ floatx80 floatx80_etox(floatx80 a, float_status *status)
|
|||
fp0 = floatx80_mul(fp0, float32_to_floatx80(
|
||||
make_float32(0xBC317218), status),
|
||||
status); /* N * L1, L1 = lead(-log2/64) */
|
||||
l2 = packFloatx80(0, 0x3FDC, LIT64(0x82E308654361C4C6));
|
||||
l2 = packFloatx80(0, 0x3FDC, UINT64_C(0x82E308654361C4C6));
|
||||
fp2 = floatx80_mul(fp2, l2, status); /* N * L2, L1+L2 = -log2/64 */
|
||||
fp0 = floatx80_add(fp0, fp1, status); /* X + N*L1 */
|
||||
fp0 = floatx80_add(fp0, fp2, status); /* R */
|
||||
|
@ -1082,7 +1082,7 @@ floatx80 floatx80_twotox(floatx80 a, float_status *status)
|
|||
make_float32(0x3C800000), status),
|
||||
status); /* (1/64)*N */
|
||||
fp0 = floatx80_sub(fp0, fp1, status); /* X - (1/64)*INT(64 X) */
|
||||
fp2 = packFloatx80(0, 0x3FFE, LIT64(0xB17217F7D1CF79AC)); /* LOG2 */
|
||||
fp2 = packFloatx80(0, 0x3FFE, UINT64_C(0xB17217F7D1CF79AC)); /* LOG2 */
|
||||
fp0 = floatx80_mul(fp0, fp2, status); /* R */
|
||||
|
||||
/* EXPR */
|
||||
|
@ -1233,11 +1233,11 @@ floatx80 floatx80_tentox(floatx80 a, float_status *status)
|
|||
fp1 = floatx80_mul(fp1, float64_to_floatx80(
|
||||
make_float64(0x3F734413509F8000), status),
|
||||
status); /* N*(LOG2/64LOG10)_LEAD */
|
||||
fp3 = packFloatx80(1, 0x3FCD, LIT64(0xC0219DC1DA994FD2));
|
||||
fp3 = packFloatx80(1, 0x3FCD, UINT64_C(0xC0219DC1DA994FD2));
|
||||
fp2 = floatx80_mul(fp2, fp3, status); /* N*(LOG2/64LOG10)_TRAIL */
|
||||
fp0 = floatx80_sub(fp0, fp1, status); /* X - N L_LEAD */
|
||||
fp0 = floatx80_sub(fp0, fp2, status); /* X - N L_TRAIL */
|
||||
fp2 = packFloatx80(0, 0x4000, LIT64(0x935D8DDDAAA8AC17)); /* LOG10 */
|
||||
fp2 = packFloatx80(0, 0x4000, UINT64_C(0x935D8DDDAAA8AC17)); /* LOG10 */
|
||||
fp0 = floatx80_mul(fp0, fp2, status); /* R */
|
||||
|
||||
/* EXPR */
|
||||
|
@ -1329,9 +1329,9 @@ floatx80 floatx80_tan(floatx80 a, float_status *status)
|
|||
fp1 = packFloatx80(0, 0, 0);
|
||||
if (compact == 0x7FFEFFFF) {
|
||||
twopi1 = packFloatx80(aSign ^ 1, 0x7FFE,
|
||||
LIT64(0xC90FDAA200000000));
|
||||
UINT64_C(0xC90FDAA200000000));
|
||||
twopi2 = packFloatx80(aSign ^ 1, 0x7FDC,
|
||||
LIT64(0x85A308D300000000));
|
||||
UINT64_C(0x85A308D300000000));
|
||||
fp0 = floatx80_add(fp0, twopi1, status);
|
||||
fp1 = fp0;
|
||||
fp0 = floatx80_add(fp0, twopi2, status);
|
||||
|
@ -1350,9 +1350,9 @@ floatx80 floatx80_tan(floatx80 a, float_status *status)
|
|||
endflag = 0;
|
||||
}
|
||||
invtwopi = packFloatx80(0, 0x3FFE - l,
|
||||
LIT64(0xA2F9836E4E44152A)); /* INVTWOPI */
|
||||
twopi1 = packFloatx80(0, 0x3FFF + l, LIT64(0xC90FDAA200000000));
|
||||
twopi2 = packFloatx80(0, 0x3FDD + l, LIT64(0x85A308D300000000));
|
||||
UINT64_C(0xA2F9836E4E44152A)); /* INVTWOPI */
|
||||
twopi1 = packFloatx80(0, 0x3FFF + l, UINT64_C(0xC90FDAA200000000));
|
||||
twopi2 = packFloatx80(0, 0x3FDD + l, UINT64_C(0x85A308D300000000));
|
||||
|
||||
/* SIGN(INARG)*2^63 IN SGL */
|
||||
twoto63 = packFloat32(xSign, 0xBE, 0);
|
||||
|
@ -1415,17 +1415,17 @@ floatx80 floatx80_tan(floatx80 a, float_status *status)
|
|||
fp3 = floatx80_add(fp3, float64_to_floatx80(
|
||||
make_float64(0xBF346F59B39BA65F), status),
|
||||
status); /* Q3+SQ4 */
|
||||
fp4 = packFloatx80(0, 0x3FF6, LIT64(0xE073D3FC199C4A00));
|
||||
fp4 = packFloatx80(0, 0x3FF6, UINT64_C(0xE073D3FC199C4A00));
|
||||
fp2 = floatx80_add(fp2, fp4, status); /* P2+SP3 */
|
||||
fp3 = floatx80_mul(fp3, fp0, status); /* S(Q3+SQ4) */
|
||||
fp2 = floatx80_mul(fp2, fp0, status); /* S(P2+SP3) */
|
||||
fp4 = packFloatx80(0, 0x3FF9, LIT64(0xD23CD68415D95FA1));
|
||||
fp4 = packFloatx80(0, 0x3FF9, UINT64_C(0xD23CD68415D95FA1));
|
||||
fp3 = floatx80_add(fp3, fp4, status); /* Q2+S(Q3+SQ4) */
|
||||
fp4 = packFloatx80(1, 0x3FFC, LIT64(0x8895A6C5FB423BCA));
|
||||
fp4 = packFloatx80(1, 0x3FFC, UINT64_C(0x8895A6C5FB423BCA));
|
||||
fp2 = floatx80_add(fp2, fp4, status); /* P1+S(P2+SP3) */
|
||||
fp3 = floatx80_mul(fp3, fp0, status); /* S(Q2+S(Q3+SQ4)) */
|
||||
fp2 = floatx80_mul(fp2, fp0, status); /* S(P1+S(P2+SP3)) */
|
||||
fp4 = packFloatx80(1, 0x3FFD, LIT64(0xEEF57E0DA84BC8CE));
|
||||
fp4 = packFloatx80(1, 0x3FFD, UINT64_C(0xEEF57E0DA84BC8CE));
|
||||
fp3 = floatx80_add(fp3, fp4, status); /* Q1+S(Q2+S(Q3+SQ4)) */
|
||||
fp2 = floatx80_mul(fp2, fp1, status); /* RS(P1+S(P2+SP3)) */
|
||||
fp0 = floatx80_mul(fp0, fp3, status); /* S(Q1+S(Q2+S(Q3+SQ4))) */
|
||||
|
@ -1459,17 +1459,17 @@ floatx80 floatx80_tan(floatx80 a, float_status *status)
|
|||
fp3 = floatx80_add(fp3, float64_to_floatx80(
|
||||
make_float64(0xBF346F59B39BA65F), status),
|
||||
status); /* Q3+SQ4 */
|
||||
fp4 = packFloatx80(0, 0x3FF6, LIT64(0xE073D3FC199C4A00));
|
||||
fp4 = packFloatx80(0, 0x3FF6, UINT64_C(0xE073D3FC199C4A00));
|
||||
fp2 = floatx80_add(fp2, fp4, status); /* P2+SP3 */
|
||||
fp3 = floatx80_mul(fp3, fp1, status); /* S(Q3+SQ4) */
|
||||
fp2 = floatx80_mul(fp2, fp1, status); /* S(P2+SP3) */
|
||||
fp4 = packFloatx80(0, 0x3FF9, LIT64(0xD23CD68415D95FA1));
|
||||
fp4 = packFloatx80(0, 0x3FF9, UINT64_C(0xD23CD68415D95FA1));
|
||||
fp3 = floatx80_add(fp3, fp4, status); /* Q2+S(Q3+SQ4) */
|
||||
fp4 = packFloatx80(1, 0x3FFC, LIT64(0x8895A6C5FB423BCA));
|
||||
fp4 = packFloatx80(1, 0x3FFC, UINT64_C(0x8895A6C5FB423BCA));
|
||||
fp2 = floatx80_add(fp2, fp4, status); /* P1+S(P2+SP3) */
|
||||
fp3 = floatx80_mul(fp3, fp1, status); /* S(Q2+S(Q3+SQ4)) */
|
||||
fp2 = floatx80_mul(fp2, fp1, status); /* S(P1+S(P2+SP3)) */
|
||||
fp4 = packFloatx80(1, 0x3FFD, LIT64(0xEEF57E0DA84BC8CE));
|
||||
fp4 = packFloatx80(1, 0x3FFD, UINT64_C(0xEEF57E0DA84BC8CE));
|
||||
fp3 = floatx80_add(fp3, fp4, status); /* Q1+S(Q2+S(Q3+SQ4)) */
|
||||
fp2 = floatx80_mul(fp2, fp0, status); /* RS(P1+S(P2+SP3)) */
|
||||
fp1 = floatx80_mul(fp1, fp3, status); /* S(Q1+S(Q2+S(Q3+SQ4))) */
|
||||
|
@ -1539,9 +1539,9 @@ floatx80 floatx80_sin(floatx80 a, float_status *status)
|
|||
fp1 = packFloatx80(0, 0, 0);
|
||||
if (compact == 0x7FFEFFFF) {
|
||||
twopi1 = packFloatx80(aSign ^ 1, 0x7FFE,
|
||||
LIT64(0xC90FDAA200000000));
|
||||
UINT64_C(0xC90FDAA200000000));
|
||||
twopi2 = packFloatx80(aSign ^ 1, 0x7FDC,
|
||||
LIT64(0x85A308D300000000));
|
||||
UINT64_C(0x85A308D300000000));
|
||||
fp0 = floatx80_add(fp0, twopi1, status);
|
||||
fp1 = fp0;
|
||||
fp0 = floatx80_add(fp0, twopi2, status);
|
||||
|
@ -1560,9 +1560,9 @@ floatx80 floatx80_sin(floatx80 a, float_status *status)
|
|||
endflag = 0;
|
||||
}
|
||||
invtwopi = packFloatx80(0, 0x3FFE - l,
|
||||
LIT64(0xA2F9836E4E44152A)); /* INVTWOPI */
|
||||
twopi1 = packFloatx80(0, 0x3FFF + l, LIT64(0xC90FDAA200000000));
|
||||
twopi2 = packFloatx80(0, 0x3FDD + l, LIT64(0x85A308D300000000));
|
||||
UINT64_C(0xA2F9836E4E44152A)); /* INVTWOPI */
|
||||
twopi1 = packFloatx80(0, 0x3FFF + l, UINT64_C(0xC90FDAA200000000));
|
||||
twopi2 = packFloatx80(0, 0x3FDD + l, UINT64_C(0x85A308D300000000));
|
||||
|
||||
/* SIGN(INARG)*2^63 IN SGL */
|
||||
twoto63 = packFloat32(xSign, 0xBE, 0);
|
||||
|
@ -1650,11 +1650,11 @@ floatx80 floatx80_sin(floatx80 a, float_status *status)
|
|||
fp2 = floatx80_add(fp2, float64_to_floatx80(
|
||||
make_float64(0x3EFA01A01A01D423), status),
|
||||
status); /* B4+T(B6+TB8) */
|
||||
fp4 = packFloatx80(1, 0x3FF5, LIT64(0xB60B60B60B61D438));
|
||||
fp4 = packFloatx80(1, 0x3FF5, UINT64_C(0xB60B60B60B61D438));
|
||||
fp3 = floatx80_add(fp3, fp4, status); /* B3+T(B5+TB7) */
|
||||
fp2 = floatx80_mul(fp2, fp1, status); /* T(B4+T(B6+TB8)) */
|
||||
fp1 = floatx80_mul(fp1, fp3, status); /* T(B3+T(B5+TB7)) */
|
||||
fp4 = packFloatx80(0, 0x3FFA, LIT64(0xAAAAAAAAAAAAAB5E));
|
||||
fp4 = packFloatx80(0, 0x3FFA, UINT64_C(0xAAAAAAAAAAAAAB5E));
|
||||
fp2 = floatx80_add(fp2, fp4, status); /* B2+T(B4+T(B6+TB8)) */
|
||||
fp1 = floatx80_add(fp1, float32_to_floatx80(
|
||||
make_float32(0xBF000000), status),
|
||||
|
@ -1702,11 +1702,11 @@ floatx80 floatx80_sin(floatx80 a, float_status *status)
|
|||
fp3 = floatx80_add(fp3, float64_to_floatx80(
|
||||
make_float64(0xBF2A01A01A018B59), status),
|
||||
status); /* A3+T(A5+TA7) */
|
||||
fp4 = packFloatx80(0, 0x3FF8, LIT64(0x88888888888859AF));
|
||||
fp4 = packFloatx80(0, 0x3FF8, UINT64_C(0x88888888888859AF));
|
||||
fp2 = floatx80_add(fp2, fp4, status); /* A2+T(A4+TA6) */
|
||||
fp1 = floatx80_mul(fp1, fp3, status); /* T(A3+T(A5+TA7)) */
|
||||
fp2 = floatx80_mul(fp2, fp0, status); /* S(A2+T(A4+TA6)) */
|
||||
fp4 = packFloatx80(1, 0x3FFC, LIT64(0xAAAAAAAAAAAAAA99));
|
||||
fp4 = packFloatx80(1, 0x3FFC, UINT64_C(0xAAAAAAAAAAAAAA99));
|
||||
fp1 = floatx80_add(fp1, fp4, status); /* A1+T(A3+T(A5+TA7)) */
|
||||
fp1 = floatx80_add(fp1, fp2,
|
||||
status); /* [A1+T(A3+T(A5+TA7))]+
|
||||
|
@ -1778,9 +1778,9 @@ floatx80 floatx80_cos(floatx80 a, float_status *status)
|
|||
fp1 = packFloatx80(0, 0, 0);
|
||||
if (compact == 0x7FFEFFFF) {
|
||||
twopi1 = packFloatx80(aSign ^ 1, 0x7FFE,
|
||||
LIT64(0xC90FDAA200000000));
|
||||
UINT64_C(0xC90FDAA200000000));
|
||||
twopi2 = packFloatx80(aSign ^ 1, 0x7FDC,
|
||||
LIT64(0x85A308D300000000));
|
||||
UINT64_C(0x85A308D300000000));
|
||||
fp0 = floatx80_add(fp0, twopi1, status);
|
||||
fp1 = fp0;
|
||||
fp0 = floatx80_add(fp0, twopi2, status);
|
||||
|
@ -1799,9 +1799,9 @@ floatx80 floatx80_cos(floatx80 a, float_status *status)
|
|||
endflag = 0;
|
||||
}
|
||||
invtwopi = packFloatx80(0, 0x3FFE - l,
|
||||
LIT64(0xA2F9836E4E44152A)); /* INVTWOPI */
|
||||
twopi1 = packFloatx80(0, 0x3FFF + l, LIT64(0xC90FDAA200000000));
|
||||
twopi2 = packFloatx80(0, 0x3FDD + l, LIT64(0x85A308D300000000));
|
||||
UINT64_C(0xA2F9836E4E44152A)); /* INVTWOPI */
|
||||
twopi1 = packFloatx80(0, 0x3FFF + l, UINT64_C(0xC90FDAA200000000));
|
||||
twopi2 = packFloatx80(0, 0x3FDD + l, UINT64_C(0x85A308D300000000));
|
||||
|
||||
/* SIGN(INARG)*2^63 IN SGL */
|
||||
twoto63 = packFloat32(xSign, 0xBE, 0);
|
||||
|
@ -1890,11 +1890,11 @@ floatx80 floatx80_cos(floatx80 a, float_status *status)
|
|||
fp2 = floatx80_add(fp2, float64_to_floatx80(
|
||||
make_float64(0x3EFA01A01A01D423), status),
|
||||
status); /* B4+T(B6+TB8) */
|
||||
fp4 = packFloatx80(1, 0x3FF5, LIT64(0xB60B60B60B61D438));
|
||||
fp4 = packFloatx80(1, 0x3FF5, UINT64_C(0xB60B60B60B61D438));
|
||||
fp3 = floatx80_add(fp3, fp4, status); /* B3+T(B5+TB7) */
|
||||
fp2 = floatx80_mul(fp2, fp1, status); /* T(B4+T(B6+TB8)) */
|
||||
fp1 = floatx80_mul(fp1, fp3, status); /* T(B3+T(B5+TB7)) */
|
||||
fp4 = packFloatx80(0, 0x3FFA, LIT64(0xAAAAAAAAAAAAAB5E));
|
||||
fp4 = packFloatx80(0, 0x3FFA, UINT64_C(0xAAAAAAAAAAAAAB5E));
|
||||
fp2 = floatx80_add(fp2, fp4, status); /* B2+T(B4+T(B6+TB8)) */
|
||||
fp1 = floatx80_add(fp1, float32_to_floatx80(
|
||||
make_float32(0xBF000000), status),
|
||||
|
@ -1941,11 +1941,11 @@ floatx80 floatx80_cos(floatx80 a, float_status *status)
|
|||
fp3 = floatx80_add(fp3, float64_to_floatx80(
|
||||
make_float64(0xBF2A01A01A018B59), status),
|
||||
status); /* A3+T(A5+TA7) */
|
||||
fp4 = packFloatx80(0, 0x3FF8, LIT64(0x88888888888859AF));
|
||||
fp4 = packFloatx80(0, 0x3FF8, UINT64_C(0x88888888888859AF));
|
||||
fp2 = floatx80_add(fp2, fp4, status); /* A2+T(A4+TA6) */
|
||||
fp1 = floatx80_mul(fp1, fp3, status); /* T(A3+T(A5+TA7)) */
|
||||
fp2 = floatx80_mul(fp2, fp0, status); /* S(A2+T(A4+TA6)) */
|
||||
fp4 = packFloatx80(1, 0x3FFC, LIT64(0xAAAAAAAAAAAAAA99));
|
||||
fp4 = packFloatx80(1, 0x3FFC, UINT64_C(0xAAAAAAAAAAAAAA99));
|
||||
fp1 = floatx80_add(fp1, fp4, status); /* A1+T(A3+T(A5+TA7)) */
|
||||
fp1 = floatx80_add(fp1, fp2, status);
|
||||
/* [A1+T(A3+T(A5+TA7))]+[S(A2+T(A4+TA6))] */
|
||||
|
@ -2114,8 +2114,8 @@ floatx80 floatx80_atan(floatx80 a, float_status *status)
|
|||
}
|
||||
}
|
||||
} else {
|
||||
aSig &= LIT64(0xF800000000000000);
|
||||
aSig |= LIT64(0x0400000000000000);
|
||||
aSig &= UINT64_C(0xF800000000000000);
|
||||
aSig |= UINT64_C(0x0400000000000000);
|
||||
xsave = packFloatx80(aSign, aExp, aSig); /* F */
|
||||
fp0 = a;
|
||||
fp1 = a; /* X */
|
||||
|
@ -2430,7 +2430,7 @@ floatx80 floatx80_etoxm1(floatx80 a, float_status *status)
|
|||
fp0 = floatx80_mul(fp0, float32_to_floatx80(
|
||||
make_float32(0xBC317218), status),
|
||||
status); /* N * L1, L1 = lead(-log2/64) */
|
||||
l2 = packFloatx80(0, 0x3FDC, LIT64(0x82E308654361C4C6));
|
||||
l2 = packFloatx80(0, 0x3FDC, UINT64_C(0x82E308654361C4C6));
|
||||
fp2 = floatx80_mul(fp2, l2, status); /* N * L2, L1+L2 = -log2/64 */
|
||||
fp0 = floatx80_add(fp0, fp1, status); /* X + N*L1 */
|
||||
fp0 = floatx80_add(fp0, fp2, status); /* R */
|
||||
|
@ -2562,7 +2562,7 @@ floatx80 floatx80_etoxm1(floatx80 a, float_status *status)
|
|||
fp2 = floatx80_add(fp2, float64_to_floatx80(
|
||||
make_float64(0x3FA5555555555555), status),
|
||||
status); /* B3 */
|
||||
fp3 = packFloatx80(0, 0x3FFC, LIT64(0xAAAAAAAAAAAAAAAB));
|
||||
fp3 = packFloatx80(0, 0x3FFC, UINT64_C(0xAAAAAAAAAAAAAAAB));
|
||||
fp1 = floatx80_add(fp1, fp3, status); /* B2 */
|
||||
fp2 = floatx80_mul(fp2, fp0, status);
|
||||
fp1 = floatx80_mul(fp1, fp0, status);
|
||||
|
|
Loading…
Reference in a new issue