Commit e2326300 authored by Alex Bennée's avatar Alex Bennée
Browse files

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.

Signed-off-by: default avatarAlex Bennée <alex.bennee@linaro.org>
Reviewed-by: default avatarRichard Henderson <richard.henderson@linaro.org>
parent e9321124
Loading
Loading
Loading
Loading
+49 −49
Original line number Diff line number Diff line
@@ -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);