m1 480 src/dps8/dps8_math.c word72 m1 = convert_to_word72 (cpu.rA, cpu.rQ); m1 536 src/dps8/dps8_math.c bool sign = isnonzero_128 (and_128 (m1, SIGN72)); // mantissa negative? m1 539 src/dps8/dps8_math.c allones &= m1.l & 1; m1 540 src/dps8/dps8_math.c notallzeros |= m1.l & 1; m1 541 src/dps8/dps8_math.c m1 = rshift_128 (m1, 1); m1 543 src/dps8/dps8_math.c m1 = or_128 (m1, SIGN72); m1 545 src/dps8/dps8_math.c if (iseq_128 (m1, MASK72) && notallzeros == 1 && shift_count * (int) shift_amt > 71) m1 546 src/dps8/dps8_math.c m1 = construct_128 (0, 0); m1 547 src/dps8/dps8_math.c m1 = and_128 (m1, MASK72); m1 550 src/dps8/dps8_math.c bool sign = m1 & SIGN72; // mantissa negative? m1 553 src/dps8/dps8_math.c allones &= m1 & 1; m1 554 src/dps8/dps8_math.c notallzeros |= m1 & 1; m1 555 src/dps8/dps8_math.c m1 >>= 1; m1 557 src/dps8/dps8_math.c m1 |= SIGN72; m1 560 src/dps8/dps8_math.c if (m1 == MASK72 && notallzeros == 1 && shift_count * (int) shift_amt > 71) m1 561 src/dps8/dps8_math.c m1 = 0; m1 562 src/dps8/dps8_math.c m1 &= MASK72; m1 601 src/dps8/dps8_math.c m3 = Add72b (m1, m2, 0, I_CARRY, & cpu.cu.IR, & ovf); m1 1131 src/dps8/dps8_math.c word72 m1 = convert_to_word72 (cpu.rA, cpu.rQ); m1 1140 src/dps8/dps8_math.c if (ISZERO_128 (m1) || ISZERO_128 (m2)) { m1 1178 src/dps8/dps8_math.c int128 m3 = multiply_s128 (SIGNEXT72_128(m1), cast_s128 (ut)); m1 1181 src/dps8/dps8_math.c int128 m3 = (SIGNEXT72_128(m1) * (SIGNEXT72_128(m2) >> 44)); m1 1195 src/dps8/dps8_math.c if (ISEQ_128 (m1, SIGN72) && ISEQ_128 (m2, SIGN72)) { m1 1263 src/dps8/dps8_math.c word72 m1; m1 1272 src/dps8/dps8_math.c m1 = convert_to_word72 (cpu.rA, cpu.rQ); m1 1299 src/dps8/dps8_math.c m1 = lshift_128 (construct_128 (0, getbits36_28 (cpu.CY, 8)), 44); ///< 28-bit mantissa (incl sign) m1 1309 src/dps8/dps8_math.c m1 = ((word72) getbits36_28 (cpu.CY, 8)) << 44; ///< 28-bit mantissa (incl sign) m1 1314 src/dps8/dps8_math.c if (ISZERO_128 (m1)) { m1 1331 src/dps8/dps8_math.c if (isnonzero_128 (and_128 (m1, SIGN72))) m1 1333 src/dps8/dps8_math.c if (m1 & SIGN72) m1 1338 src/dps8/dps8_math.c if (iseq_128 (m1, SIGN72)) { m1 1339 src/dps8/dps8_math.c m1 = rshift_128 (m1, shift_amt); m1 1342 src/dps8/dps8_math.c m1 = and_128 (negate_128 (m1), MASK72); m1 1345 src/dps8/dps8_math.c if (m1 == SIGN72) { m1 1346 src/dps8/dps8_math.c m1 >>= shift_amt; m1 1349 src/dps8/dps8_math.c m1 = (~m1 + 1) & MASK72; m1 1391 src/dps8/dps8_math.c convert_to_word36 (m1, & cpu.rA, & cpu.rQ); m1 1401 src/dps8/dps8_math.c while (isge_128 (m1, m2)) { m1 1405 src/dps8/dps8_math.c m1 = rshift_128 (m1, shift_amt); m1 1409 src/dps8/dps8_math.c while (m1 >= m2) { m1 1413 src/dps8/dps8_math.c m1 >>= shift_amt; m1 1438 src/dps8/dps8_math.c m3 = divide_128_32 (rshift_128 (m1, (44u-35u)), divisor, NULL); m1 1440 src/dps8/dps8_math.c m3 = divide_128_16 (rshift_128 (m1, (44u-35u)), (uint16_t) divisor, NULL); m1 1442 src/dps8/dps8_math.c word72 m3 = (m1 >> (44-35)) / (m2 >> 44); m1 1687 src/dps8/dps8_math.c word72 m1= lshift_128 (construct_128 (0, cpu.rA & 0777777777400), 36); m1 1689 src/dps8/dps8_math.c word72 m1 = ((word72)cpu.rA & 0777777777400LL) << 36; m1 1719 src/dps8/dps8_math.c bool s = isnonzero_128 (and_128 (m1, SIGN72)); m1 1721 src/dps8/dps8_math.c bool s = (m1 & SIGN72) != (word72)0; m1 1725 src/dps8/dps8_math.c notallzeros |= m1.l & 1; m1 1726 src/dps8/dps8_math.c m1 = rshift_128 (m1, 1); m1 1728 src/dps8/dps8_math.c notallzeros |= m1 & 1; m1 1729 src/dps8/dps8_math.c m1 >>= 1; m1 1733 src/dps8/dps8_math.c m1 = or_128 (m1, SIGN72); m1 1735 src/dps8/dps8_math.c m1 |= SIGN72; m1 1739 src/dps8/dps8_math.c if (iseq_128 (m1, MASK72) && notallzeros == 1 && shift_count * (int) shift_amt > 71) m1 1740 src/dps8/dps8_math.c m1 = construct_128 (0, 0); m1 1741 src/dps8/dps8_math.c m1 = and_128 (m1, MASK72); m1 1743 src/dps8/dps8_math.c if (m1 == MASK72 && notallzeros == 1 && shift_count * (int) shift_amt > 71) m1 1744 src/dps8/dps8_math.c m1 = 0; m1 1745 src/dps8/dps8_math.c m1 &= MASK72; m1 1786 src/dps8/dps8_math.c SC_I_ZERO (iseq_128 (m1, m2)); m1 1787 src/dps8/dps8_math.c SC_I_NEG (islt_s128 (SIGNEXT72_128(m1), SIGNEXT72_128(m2))); m1 1789 src/dps8/dps8_math.c SC_I_ZERO (m1 == m2); m1 1790 src/dps8/dps8_math.c SC_I_NEG ((int128)SIGNEXT72_128(m1) < (int128)SIGNEXT72_128(m2)); m1 1826 src/dps8/dps8_math.c word72 m1 = lshift_128 (construct_128 (0, cpu.rA & 0777777777400), 36); m1 1828 src/dps8/dps8_math.c word72 m1 = ((word72)cpu.rA & 0777777777400LL) << 36; m1 1853 src/dps8/dps8_math.c bool s = isnonzero_128 (and_128 (m1, SIGN72)); m1 1855 src/dps8/dps8_math.c bool s = (m1 & SIGN72) != (word72)0; ///< save sign bit m1 1859 src/dps8/dps8_math.c notallzeros |= m1.l & 1; m1 1860 src/dps8/dps8_math.c m1 = rshift_128 (m1, 1); m1 1862 src/dps8/dps8_math.c notallzeros |= m1 & 1; m1 1863 src/dps8/dps8_math.c m1 >>= 1; m1 1867 src/dps8/dps8_math.c m1 = or_128 (m1, SIGN72); m1 1869 src/dps8/dps8_math.c m1 |= SIGN72; m1 1874 src/dps8/dps8_math.c if (iseq_128 (m1, MASK72) && notallzeros == 1 && shift_count * (int) shift_amt > 71) m1 1875 src/dps8/dps8_math.c m1 = construct_128 (0, 0); m1 1876 src/dps8/dps8_math.c m1 = and_128 (m1, MASK72); m1 1878 src/dps8/dps8_math.c if (m1 == MASK72 && notallzeros == 1 && shift_count * (int) shift_amt > 71) m1 1879 src/dps8/dps8_math.c m1 = 0; m1 1880 src/dps8/dps8_math.c m1 &= MASK72; m1 1916 src/dps8/dps8_math.c SC_I_ZERO (ISEQ_128 (m1, m2)); m1 1918 src/dps8/dps8_math.c int128 sm1 = SIGNEXT72_128 (m1); m1 1926 src/dps8/dps8_math.c int128 sm1 = SIGNEXT72_128 (m1); m1 1992 src/dps8/dps8_math.c word72 m1 = convert_to_word72 (cpu.rA, cpu.rQ); m1 2059 src/dps8/dps8_math.c bool s = isnonzero_128 (and_128 (m1, SIGN72)); m1 2061 src/dps8/dps8_math.c bool s = (m1 & SIGN72) != (word72)0; m1 2065 src/dps8/dps8_math.c notallzeros |= m1.l & 1; m1 2066 src/dps8/dps8_math.c m1 = rshift_128 (m1, 1); m1 2068 src/dps8/dps8_math.c notallzeros |= m1 & 1; m1 2069 src/dps8/dps8_math.c m1 >>= 1; m1 2073 src/dps8/dps8_math.c m1 = or_128 (m1, SIGN72); m1 2075 src/dps8/dps8_math.c m1 |= SIGN72; m1 2079 src/dps8/dps8_math.c if (iseq_128 (m1, MASK72) && notallzeros == 1 && shift_count * (int) shift_amt > 71) m1 2080 src/dps8/dps8_math.c m1 = construct_128 (0, 0); m1 2081 src/dps8/dps8_math.c m1 = and_128 (m1, MASK72); m1 2083 src/dps8/dps8_math.c if (m1 == MASK72 && notallzeros == 1 && shift_count * (int) shift_amt > 71) m1 2084 src/dps8/dps8_math.c m1 = 0; m1 2085 src/dps8/dps8_math.c m1 &= MASK72; m1 2124 src/dps8/dps8_math.c word72 m3 = Add72b (m1, m2, 0, I_CARRY, & cpu.cu.IR, & ovf); m1 2304 src/dps8/dps8_math.c word72 m1 = convert_to_word72 (cpu.rA, cpu.rQ); m1 2308 src/dps8/dps8_math.c sim_debug (DBG_TRACEEXT, & cpu_dev, "dufm e1 %d %03o m1 %012"PRIo64" %012"PRIo64"\n", e1, e1, (word36) (m1 >> 36) & MASK36, (word36) m1 & MASK36); m1 2326 src/dps8/dps8_math.c if (ISZERO_128 (m1) || ISZERO_128 (m2)) { m1 2370 src/dps8/dps8_math.c int128 m1l = and_s128 (cast_s128 (m1), construct_128 (0, MASK64)); m1 2371 src/dps8/dps8_math.c int128 m1h = rshift_s128 (SIGNEXT72_128(m1), 64); m1 2384 src/dps8/dps8_math.c int128 m1l = m1 & (((uint128)1<<64)-1); m1 2385 src/dps8/dps8_math.c int128 m1h = SIGNEXT72_128(m1) >> 64; m1 2399 src/dps8/dps8_math.c if (ISEQ_128 (m1, SIGN72) && ISEQ_128 (m2, SIGN72)) { m1 2468 src/dps8/dps8_math.c word72 m1; m1 2477 src/dps8/dps8_math.c m1 = convert_to_word72 (cpu.rA, cpu.rQ); m1 2521 src/dps8/dps8_math.c m1 = lshift_128 (construct_128 (0, (uint64_t) getbits36_28 (cpu.Ypair[0], 8)), 44u); // 28-bit mantissa (incl sign) m1 2522 src/dps8/dps8_math.c m1 = or_128 (m1, lshift_128 (construct_128 (0, cpu.Ypair[1]), 8u)); m1 2524 src/dps8/dps8_math.c m1 = ((word72) getbits36_28 (cpu.Ypair[0], 8)) << 44; m1 2525 src/dps8/dps8_math.c m1 |= (word72) cpu.Ypair[1] << 8; m1 2531 src/dps8/dps8_math.c if (ISZERO_128 (m1)) { m1 2548 src/dps8/dps8_math.c if (isnonzero_128 (and_128 (m1, SIGN72))) { m1 2550 src/dps8/dps8_math.c if (iseq_128 (m1, SIGN72)) { m1 2551 src/dps8/dps8_math.c m1 = rshift_128 (m1, shift_amt); m1 2554 src/dps8/dps8_math.c m1 = and_128 (negate_128 (m1), MASK72); m1 2571 src/dps8/dps8_math.c if (m1 & SIGN72) { m1 2573 src/dps8/dps8_math.c if (m1 == SIGN72) { m1 2574 src/dps8/dps8_math.c m1 >>= shift_amt; m1 2577 src/dps8/dps8_math.c m1 = (~m1 + 1) & MASK72; m1 2607 src/dps8/dps8_math.c convert_to_word36 (m1, & cpu.rA, & cpu.rQ); m1 2617 src/dps8/dps8_math.c while (isge_128 (m1, m2)) { m1 2618 src/dps8/dps8_math.c m1 = rshift_128 (m1, shift_amt); m1 2622 src/dps8/dps8_math.c while (m1 >= m2) { m1 2623 src/dps8/dps8_math.c m1 >>= shift_amt; m1 2645 src/dps8/dps8_math.c word72 m3 = divide_128 (lshift_128 (m1, 63-8), rshift_128 (m2, 8), NULL); m1 2647 src/dps8/dps8_math.c word72 m3 = ((uint128)m1 << (63-8)) / ((uint128)m2 >> 8); m1 3317 src/dps8/dps8_math.c word72 m1 = convert_to_word72 (cpu.rA, cpu.rQ & 0777777777400LL); m1 3340 src/dps8/dps8_math.c bool s = isnonzero_128 (and_128 (m1, SIGN72)); ///< mantissa negative? m1 3342 src/dps8/dps8_math.c notallzeros |= m1.l & 1; m1 3343 src/dps8/dps8_math.c m1 = rshift_128 (m1, 1); m1 3345 src/dps8/dps8_math.c m1 = or_128 (m1, SIGN72); m1 3349 src/dps8/dps8_math.c if (iseq_128 (m1, MASK72) && notallzeros == 1 && shift_count * (int) shift_amt > 71) m1 3350 src/dps8/dps8_math.c m1 = construct_128 (0, 0); m1 3352 src/dps8/dps8_math.c if (iseq_128 (m1, MASK72) && notallzeros == 1 && shift_count > 71) m1 3353 src/dps8/dps8_math.c m1 = construct_128 (0, 0); m1 3355 src/dps8/dps8_math.c m1 = and_128 (m1, MASK72); m1 3375 src/dps8/dps8_math.c SC_I_ZERO (iseq_128 (m1, m2)); m1 3376 src/dps8/dps8_math.c int128 sm1 = SIGNEXT72_128 (m1); m1 3384 src/dps8/dps8_math.c bool s = m1 & SIGN72; ///< mantissa negative? m1 3386 src/dps8/dps8_math.c notallzeros |= m1 & 1; m1 3387 src/dps8/dps8_math.c m1 >>= 1; m1 3389 src/dps8/dps8_math.c m1 |= SIGN72; m1 3393 src/dps8/dps8_math.c if (m1 == MASK72 && notallzeros == 1 && shift_count * (int) shift_amt > 71) m1 3394 src/dps8/dps8_math.c m1 = 0; m1 3396 src/dps8/dps8_math.c if (m1 == MASK72 && notallzeros == 1 && shift_count > 71) m1 3397 src/dps8/dps8_math.c m1 = 0; m1 3399 src/dps8/dps8_math.c m1 &= MASK72; m1 3419 src/dps8/dps8_math.c SC_I_ZERO (m1 == m2); m1 3420 src/dps8/dps8_math.c int128 sm1 = SIGNEXT72_128 (m1); m1 3452 src/dps8/dps8_math.c word72 m1 = convert_to_word72 (cpu.rA & MASK36, cpu.rQ & 0777777777400LL); m1 3476 src/dps8/dps8_math.c bool s = isnonzero_128 (and_128 (m1, SIGN72)); ///< mantissa negative? m1 3478 src/dps8/dps8_math.c notallzeros |= m1.l & 1; m1 3479 src/dps8/dps8_math.c m1 = rshift_128 (m1, 1); m1 3481 src/dps8/dps8_math.c m1 = or_128 (m1, SIGN72); m1 3484 src/dps8/dps8_math.c if (iseq_128 (m1, MASK72) && notallzeros == 1 && shift_count * (int) shift_amt > 71) m1 3485 src/dps8/dps8_math.c m1 = construct_128 (0, 0); m1 3487 src/dps8/dps8_math.c if (iseq_128 (m1, MASK72) && notallzeros == 1 && shift_count > 71) m1 3488 src/dps8/dps8_math.c m1 = construct_128 (0, 0); m1 3490 src/dps8/dps8_math.c m1 = and_128 (m1, MASK72); m1 3492 src/dps8/dps8_math.c bool s = m1 & SIGN72; ///< mantissa negative? m1 3494 src/dps8/dps8_math.c notallzeros |= m1 & 1; m1 3495 src/dps8/dps8_math.c m1 >>= 1; m1 3497 src/dps8/dps8_math.c m1 |= SIGN72; m1 3500 src/dps8/dps8_math.c if (m1 == MASK72 && notallzeros == 1 && shift_count * (int) shift_amt > 71) m1 3501 src/dps8/dps8_math.c m1 = 0; m1 3503 src/dps8/dps8_math.c if (m1 == MASK72 && notallzeros == 1 && shift_count > 71) m1 3504 src/dps8/dps8_math.c m1 = 0; m1 3506 src/dps8/dps8_math.c m1 &= MASK72; m1 3546 src/dps8/dps8_math.c SC_I_ZERO (iseq_128 (m1, m2)); m1 3547 src/dps8/dps8_math.c int128 sm1 = SIGNEXT72_128 (m1); m1 3556 src/dps8/dps8_math.c SC_I_ZERO (m1 == m2); m1 3557 src/dps8/dps8_math.c int128 sm1 = SIGNEXT72_128 (m1);