res 381 src/decNumber/decContext.c Int res=0; // optimist res 387 src/decNumber/decContext.c res=(Int)LITEND-dle; res 389 src/decNumber/decContext.c return res; res 431 src/decNumber/decNumber.c Unit *res; // where result will be built res 584 src/decNumber/decNumber.c if (d<=set->digits) res=dn->lsu; // fits into supplied decNumber res 587 src/decNumber/decNumber.c res=resbuff; // assume use local buffer res 591 src/decNumber/decNumber.c res=allocres; res 600 src/decNumber/decNumber.c up=res+D2U(d)-1; // -> msu res 601 src/decNumber/decNumber.c cut=d-(up-res)*DECDPUN; // digits in top unit res 617 src/decNumber/decNumber.c up=res; // -> lsu res 632 src/decNumber/decNumber.c decSetCoeff(dn, set, res, d, &residue, &status); res 671 src/decNumber/decNumber.c decNumber * decNumberAbs(decNumber *res, const decNumber *rhs, res 678 src/decNumber/decNumber.c decAddOp(res, &dzero, rhs, set, (uByte)(rhs->bits & DECNEG), &status); res 679 src/decNumber/decNumber.c if (status!=0) decStatus(res, status, set); res 680 src/decNumber/decNumber.c return res; res 696 src/decNumber/decNumber.c decNumber * decNumberAdd(decNumber *res, const decNumber *lhs, res 699 src/decNumber/decNumber.c decAddOp(res, lhs, rhs, set, 0, &status); res 700 src/decNumber/decNumber.c if (status!=0) decStatus(res, status, set); res 701 src/decNumber/decNumber.c return res; res 719 src/decNumber/decNumber.c decNumber * decNumberAnd(decNumber *res, const decNumber *lhs, res 728 src/decNumber/decNumber.c decStatus(res, DEC_Invalid_operation, set); res 729 src/decNumber/decNumber.c return res; res 735 src/decNumber/decNumber.c uc=res->lsu; // .. res 758 src/decNumber/decNumber.c decStatus(res, DEC_Invalid_operation, set); res 759 src/decNumber/decNumber.c return res; res 766 src/decNumber/decNumber.c res->digits=decGetDigits(res->lsu, uc-res->lsu); res 767 src/decNumber/decNumber.c res->exponent=0; // integer res 768 src/decNumber/decNumber.c res->bits=0; // sign=0 res 769 src/decNumber/decNumber.c return res; // [no status to set] res 784 src/decNumber/decNumber.c decNumber * decNumberCompare(decNumber *res, const decNumber *lhs, res 787 src/decNumber/decNumber.c decCompareOp(res, lhs, rhs, set, COMPARE, &status); res 788 src/decNumber/decNumber.c if (status!=0) decStatus(res, status, set); res 789 src/decNumber/decNumber.c return res; res 804 src/decNumber/decNumber.c decNumber * decNumberCompareSignal(decNumber *res, const decNumber *lhs, res 807 src/decNumber/decNumber.c decCompareOp(res, lhs, rhs, set, COMPSIG, &status); res 808 src/decNumber/decNumber.c if (status!=0) decStatus(res, status, set); res 809 src/decNumber/decNumber.c return res; res 825 src/decNumber/decNumber.c decNumber * decNumberCompareTotal(decNumber *res, const decNumber *lhs, res 828 src/decNumber/decNumber.c decCompareOp(res, lhs, rhs, set, COMPTOTAL, &status); res 829 src/decNumber/decNumber.c if (status!=0) decStatus(res, status, set); res 830 src/decNumber/decNumber.c return res; res 846 src/decNumber/decNumber.c decNumber * decNumberCompareTotalMag(decNumber *res, const decNumber *lhs, res 886 src/decNumber/decNumber.c decCompareOp(res, lhs, rhs, set, COMPTOTAL, &status); res 891 src/decNumber/decNumber.c if (status!=0) decStatus(res, status, set); res 892 src/decNumber/decNumber.c return res; res 907 src/decNumber/decNumber.c decNumber * decNumberDivide(decNumber *res, const decNumber *lhs, res 910 src/decNumber/decNumber.c decDivideOp(res, lhs, rhs, set, DIVIDE, &status); res 911 src/decNumber/decNumber.c if (status!=0) decStatus(res, status, set); res 912 src/decNumber/decNumber.c return res; res 927 src/decNumber/decNumber.c decNumber * decNumberDivideInteger(decNumber *res, const decNumber *lhs, res 930 src/decNumber/decNumber.c decDivideOp(res, lhs, rhs, set, DIVIDEINT, &status); res 931 src/decNumber/decNumber.c if (status!=0) decStatus(res, status, set); res 932 src/decNumber/decNumber.c return res; res 960 src/decNumber/decNumber.c decNumber * decNumberExp(decNumber *res, const decNumber *rhs, res 982 src/decNumber/decNumber.c decExpOp(res, rhs, set, &status); res 989 src/decNumber/decNumber.c if (status!=0) decStatus(res, status, set); res 990 src/decNumber/decNumber.c return res; res 1009 src/decNumber/decNumber.c decNumber * decNumberFMA(decNumber *res, const decNumber *lhs, res 1057 src/decNumber/decNumber.c decNumberZero(res); // acc not yet set res 1058 src/decNumber/decNumber.c res->bits=DECNAN; res 1065 src/decNumber/decNumber.c decAddOp(res, acc, fhs, set, 0, &status); res 1069 src/decNumber/decNumber.c if (status!=0) decStatus(res, status, set); res 1070 src/decNumber/decNumber.c return res; res 1087 src/decNumber/decNumber.c decNumber * decNumberInvert(decNumber *res, const decNumber *rhs, res 1094 src/decNumber/decNumber.c decStatus(res, DEC_Invalid_operation, set); res 1095 src/decNumber/decNumber.c return res; res 1099 src/decNumber/decNumber.c uc=res->lsu; // .. res 1116 src/decNumber/decNumber.c decStatus(res, DEC_Invalid_operation, set); res 1117 src/decNumber/decNumber.c return res; res 1123 src/decNumber/decNumber.c res->digits=decGetDigits(res->lsu, uc-res->lsu); res 1124 src/decNumber/decNumber.c res->exponent=0; // integer res 1125 src/decNumber/decNumber.c res->bits=0; // sign=0 res 1126 src/decNumber/decNumber.c return res; // [no status to set] res 1157 src/decNumber/decNumber.c decNumber * decNumberLn(decNumber *res, const decNumber *rhs, res 1181 src/decNumber/decNumber.c decLnOp(res, rhs, set, &status); res 1188 src/decNumber/decNumber.c if (status!=0) decStatus(res, status, set); res 1189 src/decNumber/decNumber.c return res; res 1216 src/decNumber/decNumber.c decNumber * decNumberLogB(decNumber *res, const decNumber *rhs, res 1221 src/decNumber/decNumber.c if (decNumberIsNaN(rhs)) decNaNs(res, rhs, NULL, set, &status); res 1222 src/decNumber/decNumber.c else if (decNumberIsInfinite(rhs)) decNumberCopyAbs(res, rhs); res 1224 src/decNumber/decNumber.c decNumberZero(res); // prepare for Infinity res 1225 src/decNumber/decNumber.c res->bits=DECNEG|DECINF; // -Infinity res 1230 src/decNumber/decNumber.c if (set->digits>=10) decNumberFromInt32(res, ae); // lay it out res 1235 src/decNumber/decNumber.c decNumberPlus(res, t, set); // round as necessary res 1239 src/decNumber/decNumber.c if (status!=0) decStatus(res, status, set); res 1240 src/decNumber/decNumber.c return res; res 1274 src/decNumber/decNumber.c decNumber * decNumberLog10(decNumber *res, const decNumber *rhs, res 1299 src/decNumber/decNumber.c decNumberPlus(res, rhs, set); res 1300 src/decNumber/decNumber.c return res; res 1339 src/decNumber/decNumber.c decCopyFit(res, w, set, &residue, &status); // copy & round res 1340 src/decNumber/decNumber.c decFinish(res, set, &residue, &status); // cleanup/set flags res 1371 src/decNumber/decNumber.c decNumberCopy(res, a); // [will fit] res 1396 src/decNumber/decNumber.c decDivideOp(res, a, b, &aset, DIVIDE, &status); // into result res 1405 src/decNumber/decNumber.c if (status!=0) decStatus(res, status, set); res 1406 src/decNumber/decNumber.c return res; res 1421 src/decNumber/decNumber.c decNumber * decNumberMax(decNumber *res, const decNumber *lhs, res 1424 src/decNumber/decNumber.c decCompareOp(res, lhs, rhs, set, COMPMAX, &status); res 1425 src/decNumber/decNumber.c if (status!=0) decStatus(res, status, set); res 1426 src/decNumber/decNumber.c return res; res 1441 src/decNumber/decNumber.c decNumber * decNumberMaxMag(decNumber *res, const decNumber *lhs, res 1444 src/decNumber/decNumber.c decCompareOp(res, lhs, rhs, set, COMPMAXMAG, &status); res 1445 src/decNumber/decNumber.c if (status!=0) decStatus(res, status, set); res 1446 src/decNumber/decNumber.c return res; res 1461 src/decNumber/decNumber.c decNumber * decNumberMin(decNumber *res, const decNumber *lhs, res 1464 src/decNumber/decNumber.c decCompareOp(res, lhs, rhs, set, COMPMIN, &status); res 1465 src/decNumber/decNumber.c if (status!=0) decStatus(res, status, set); res 1466 src/decNumber/decNumber.c return res; res 1481 src/decNumber/decNumber.c decNumber * decNumberMinMag(decNumber *res, const decNumber *lhs, res 1484 src/decNumber/decNumber.c decCompareOp(res, lhs, rhs, set, COMPMINMAG, &status); res 1485 src/decNumber/decNumber.c if (status!=0) decStatus(res, status, set); res 1486 src/decNumber/decNumber.c return res; res 1503 src/decNumber/decNumber.c decNumber * decNumberMinus(decNumber *res, const decNumber *rhs, res 1510 src/decNumber/decNumber.c decAddOp(res, &dzero, rhs, set, DECNEG, &status); res 1511 src/decNumber/decNumber.c if (status!=0) decStatus(res, status, set); res 1512 src/decNumber/decNumber.c return res; res 1526 src/decNumber/decNumber.c decNumber * decNumberNextMinus(decNumber *res, const decNumber *rhs, res 1534 src/decNumber/decNumber.c decSetMaxValue(res, set); // is +ve res 1536 src/decNumber/decNumber.c return res; res 1541 src/decNumber/decNumber.c decNumberPlus(res, rhs, &workset); res 1544 src/decNumber/decNumber.c return res; res 1550 src/decNumber/decNumber.c decAddOp(res, rhs, &dtiny, &workset, DECNEG, &status); res 1552 src/decNumber/decNumber.c if (status!=0) decStatus(res, status, set); res 1553 src/decNumber/decNumber.c return res; res 1567 src/decNumber/decNumber.c decNumber * decNumberNextPlus(decNumber *res, const decNumber *rhs, res 1575 src/decNumber/decNumber.c decSetMaxValue(res, set); res 1576 src/decNumber/decNumber.c res->bits=DECNEG; // negative res 1578 src/decNumber/decNumber.c return res; res 1583 src/decNumber/decNumber.c decNumberPlus(res, rhs, &workset); res 1586 src/decNumber/decNumber.c return res; res 1592 src/decNumber/decNumber.c decAddOp(res, rhs, &dtiny, &workset, 0, &status); res 1594 src/decNumber/decNumber.c if (status!=0) decStatus(res, status, set); res 1595 src/decNumber/decNumber.c return res; res 1612 src/decNumber/decNumber.c decNumber * decNumberNextToward(decNumber *res, const decNumber *lhs, res 1620 src/decNumber/decNumber.c decNaNs(res, lhs, rhs, set, &status); res 1626 src/decNumber/decNumber.c if (result==0) decNumberCopySign(res, lhs, rhs); // easy res 1632 src/decNumber/decNumber.c decSetMaxValue(res, set); res 1633 src/decNumber/decNumber.c res->bits=DECNEG; // negative res 1634 src/decNumber/decNumber.c return res; // there is no status to set res 1642 src/decNumber/decNumber.c decSetMaxValue(res, set); res 1643 src/decNumber/decNumber.c return res; // there is no status to set res 1651 src/decNumber/decNumber.c decAddOp(res, lhs, &dtiny, &workset, sub, &status); // + or - res 1654 src/decNumber/decNumber.c if (decNumberIsNormal(res, set)) status=0; res 1658 src/decNumber/decNumber.c if (status!=0) decStatus(res, status, set); res 1659 src/decNumber/decNumber.c return res; res 1677 src/decNumber/decNumber.c decNumber * decNumberOr(decNumber *res, const decNumber *lhs, res 1686 src/decNumber/decNumber.c decStatus(res, DEC_Invalid_operation, set); res 1687 src/decNumber/decNumber.c return res; res 1692 src/decNumber/decNumber.c uc=res->lsu; // .. res 1714 src/decNumber/decNumber.c decStatus(res, DEC_Invalid_operation, set); res 1715 src/decNumber/decNumber.c return res; res 1722 src/decNumber/decNumber.c res->digits=decGetDigits(res->lsu, uc-res->lsu); res 1723 src/decNumber/decNumber.c res->exponent=0; // integer res 1724 src/decNumber/decNumber.c res->bits=0; // sign=0 res 1725 src/decNumber/decNumber.c return res; // [no status to set] res 1744 src/decNumber/decNumber.c decNumber * decNumberPlus(decNumber *res, const decNumber *rhs, res 1751 src/decNumber/decNumber.c decAddOp(res, &dzero, rhs, set, 0, &status); res 1752 src/decNumber/decNumber.c if (status!=0) decStatus(res, status, set); res 1753 src/decNumber/decNumber.c return res; res 1768 src/decNumber/decNumber.c decNumber * decNumberMultiply(decNumber *res, const decNumber *lhs, res 1771 src/decNumber/decNumber.c decMultiplyOp(res, lhs, rhs, set, &status); res 1772 src/decNumber/decNumber.c if (status!=0) decStatus(res, status, set); res 1773 src/decNumber/decNumber.c return res; res 1802 src/decNumber/decNumber.c decNumber * decNumberPower(decNumber *res, const decNumber *lhs, res 1852 src/decNumber/decNumber.c decNaNs(res, lhs, rhs, set, &status); res 1863 src/decNumber/decNumber.c decNumberZero(res); // prepare for 0/1/Infinity res 1865 src/decNumber/decNumber.c if (rhsneg) res->bits|=DECINF; // +Infinity [else is +0] res 1870 src/decNumber/decNumber.c *res->lsu=1; // was 0, make int 1 res 1871 src/decNumber/decNumber.c res->digits=decShiftToMost(res->lsu, 1, shift); res 1872 src/decNumber/decNumber.c res->exponent=-shift; // make 1.0000... res 1876 src/decNumber/decNumber.c if (!rhsneg) res->bits|=DECINF; // +Infinity [else is +0] res 1898 src/decNumber/decNumber.c decNumberZero(res); // prepare res 1899 src/decNumber/decNumber.c if (n==0) *res->lsu=1; // [-]Inf**0 => 1 res 1907 src/decNumber/decNumber.c res->bits=bits; res 1916 src/decNumber/decNumber.c decNumberZero(res); res 1917 src/decNumber/decNumber.c *res->lsu=1; // return 1 res 1932 src/decNumber/decNumber.c decNumberZero(res); // prepare res 1934 src/decNumber/decNumber.c res->bits=bits; res 1970 src/decNumber/decNumber.c decNumberZero(res); // result=1 res 1971 src/decNumber/decNumber.c *res->lsu=1; // .. res 2099 src/decNumber/decNumber.c decNumberCopy(res, dac); // copy to result (is now OK length) res 2113 src/decNumber/decNumber.c decCopyFit(res, dac, set, &residue, &status); res 2114 src/decNumber/decNumber.c decFinish(res, set, &residue, &status); // final cleanup res 2116 src/decNumber/decNumber.c if (!set->extended) decTrim(res, set, 0, 1, &dropped); // trailing zeros res 2126 src/decNumber/decNumber.c if (status!=0) decStatus(res, status, set); res 2127 src/decNumber/decNumber.c return res; res 2148 src/decNumber/decNumber.c decNumber * decNumberQuantize(decNumber *res, const decNumber *lhs, res 2151 src/decNumber/decNumber.c decQuantizeOp(res, lhs, rhs, set, 1, &status); res 2152 src/decNumber/decNumber.c if (status!=0) decStatus(res, status, set); res 2153 src/decNumber/decNumber.c return res; res 2168 src/decNumber/decNumber.c decNumber * decNumberNormalize(decNumber *res, const decNumber *rhs, res 2170 src/decNumber/decNumber.c return decNumberReduce(res, rhs, set); res 2173 src/decNumber/decNumber.c decNumber * decNumberReduce(decNumber *res, const decNumber *rhs, res 2197 src/decNumber/decNumber.c decNaNs(res, rhs, NULL, set, &status); res 2202 src/decNumber/decNumber.c decCopyFit(res, rhs, set, &residue, &status); // copy & round res 2203 src/decNumber/decNumber.c decFinish(res, set, &residue, &status); // cleanup/set flags res 2204 src/decNumber/decNumber.c decTrim(res, set, 1, 0, &dropped); // normalize in place res 2211 src/decNumber/decNumber.c if (status!=0) decStatus(res, status, set);// then report status res 2212 src/decNumber/decNumber.c return res; res 2233 src/decNumber/decNumber.c decNumber * decNumberRescale(decNumber *res, const decNumber *lhs, res 2236 src/decNumber/decNumber.c decQuantizeOp(res, lhs, rhs, set, 0, &status); res 2237 src/decNumber/decNumber.c if (status!=0) decStatus(res, status, set); res 2238 src/decNumber/decNumber.c return res; res 2253 src/decNumber/decNumber.c decNumber * decNumberRemainder(decNumber *res, const decNumber *lhs, res 2256 src/decNumber/decNumber.c decDivideOp(res, lhs, rhs, set, REMAINDER, &status); res 2257 src/decNumber/decNumber.c if (status!=0) decStatus(res, status, set); res 2258 src/decNumber/decNumber.c return res; res 2273 src/decNumber/decNumber.c decNumber * decNumberRemainderNear(decNumber *res, const decNumber *lhs, res 2276 src/decNumber/decNumber.c decDivideOp(res, lhs, rhs, set, REMNEAR, &status); res 2277 src/decNumber/decNumber.c if (status!=0) decStatus(res, status, set); res 2278 src/decNumber/decNumber.c return res; res 2306 src/decNumber/decNumber.c decNumber * decNumberRotate(decNumber *res, const decNumber *lhs, res 2313 src/decNumber/decNumber.c decNaNs(res, lhs, rhs, set, &status); res 2324 src/decNumber/decNumber.c decNumberCopy(res, lhs); res 2325 src/decNumber/decNumber.c if (res->digits>set->digits) decDecap(res, res->digits-set->digits); res 2329 src/decNumber/decNumber.c && !decNumberIsInfinite(res)) { // lhs was infinite res 2333 src/decNumber/decNumber.c Unit *msu=res->lsu+D2U(res->digits)-1; // current msu res 2334 src/decNumber/decNumber.c Unit *msumax=res->lsu+D2U(set->digits)-1; //-V778 // rotation msu res 2336 src/decNumber/decNumber.c res->digits=set->digits; // now full-length res 2337 src/decNumber/decNumber.c msudigits=MSUDIGITS(res->digits); // actual digits in msu res 2374 src/decNumber/decNumber.c uInt save=res->lsu[0]%powers[shift]; //-V557 // save low digit(s) res 2375 src/decNumber/decNumber.c decShiftToLeast(res->lsu, D2U(res->digits), shift); res 2394 src/decNumber/decNumber.c uInt save=res->lsu[0]%powers[shift]; // save low digit(s) res 2395 src/decNumber/decNumber.c decShiftToLeast(res->lsu, units, shift); res 2401 src/decNumber/decNumber.c decReverse(res->lsu+units, msumax); // left part res 2402 src/decNumber/decNumber.c decReverse(res->lsu, res->lsu+units-1); // right part res 2403 src/decNumber/decNumber.c decReverse(res->lsu, msumax); // whole res 2407 src/decNumber/decNumber.c res->digits=decGetDigits(res->lsu, msumax-res->lsu+1); res 2411 src/decNumber/decNumber.c if (status!=0) decStatus(res, status, set); res 2412 src/decNumber/decNumber.c return res; res 2424 src/decNumber/decNumber.c decNumber * decNumberSameQuantum(decNumber *res, const decNumber *lhs, res 2435 src/decNumber/decNumber.c decNumberZero(res); // OK to overwrite an operand now res 2436 src/decNumber/decNumber.c *res->lsu=ret; res 2437 src/decNumber/decNumber.c return res; res 2455 src/decNumber/decNumber.c decNumber * decNumberScaleB(decNumber *res, const decNumber *lhs, res 2463 src/decNumber/decNumber.c decNaNs(res, lhs, rhs, set, &status); res 2477 src/decNumber/decNumber.c decNumberCopy(res, lhs); // all done if infinite lhs res 2478 src/decNumber/decNumber.c if (!decNumberIsInfinite(res)) { // prepare to scale res 2479 src/decNumber/decNumber.c Int exp=res->exponent; // save for overflow test res 2480 src/decNumber/decNumber.c res->exponent+=reqexp; // adjust the exponent res 2482 src/decNumber/decNumber.c && ((exp^res->exponent)<0)) { // .. but result had different res 2484 src/decNumber/decNumber.c if (exp<0) res->exponent=DEC_MIN_EMIN-DEC_MAX_DIGITS; res 2485 src/decNumber/decNumber.c else res->exponent=DEC_MAX_EMAX+1; res 2488 src/decNumber/decNumber.c decCopyFit(res, res, set, &residue, &status); res 2489 src/decNumber/decNumber.c decFinalize(res, set, &residue, &status); // final check res 2493 src/decNumber/decNumber.c if (status!=0) decStatus(res, status, set); res 2494 src/decNumber/decNumber.c return res; res 2518 src/decNumber/decNumber.c decNumber * decNumberShift(decNumber *res, const decNumber *lhs, res 2525 src/decNumber/decNumber.c decNaNs(res, lhs, rhs, set, &status); res 2536 src/decNumber/decNumber.c decNumberCopy(res, lhs); res 2537 src/decNumber/decNumber.c if (shift!=0 && !decNumberIsInfinite(res)) { // something to do res 2540 src/decNumber/decNumber.c *res->lsu=0; // so place 0 res 2541 src/decNumber/decNumber.c res->digits=1; // .. res 2545 src/decNumber/decNumber.c if (res->digits+shift>set->digits) { res 2546 src/decNumber/decNumber.c decDecap(res, res->digits+shift-set->digits); res 2550 src/decNumber/decNumber.c if (res->digits>1 || *res->lsu) // if non-zero.. res 2551 src/decNumber/decNumber.c res->digits=decShiftToMost(res->lsu, res->digits, shift); res 2555 src/decNumber/decNumber.c if (-shift>=res->digits) { // discarding all res 2556 src/decNumber/decNumber.c *res->lsu=0; // so place 0 res 2557 src/decNumber/decNumber.c res->digits=1; // .. res 2560 src/decNumber/decNumber.c decShiftToLeast(res->lsu, D2U(res->digits), -shift); res 2561 src/decNumber/decNumber.c res->digits-=(-shift); res 2567 src/decNumber/decNumber.c if (status!=0) decStatus(res, status, set); res 2568 src/decNumber/decNumber.c return res; res 2643 src/decNumber/decNumber.c decNumber * decNumberSquareRoot(decNumber *res, const decNumber *rhs, res 2695 src/decNumber/decNumber.c else decNumberCopy(res, rhs); // +Infinity res 2697 src/decNumber/decNumber.c else decNaNs(res, rhs, NULL, set, &status); // a NaN res 2708 src/decNumber/decNumber.c decNumberCopy(res, rhs); // could be 0 or -0 res 2709 src/decNumber/decNumber.c res->exponent=ideal; // use the ideal [safe] res 2711 src/decNumber/decNumber.c decFinish(res, set, &residue, &status); res 2839 src/decNumber/decNumber.c decNumberCopy(res, a); // copy to result res 2953 src/decNumber/decNumber.c decNumberCopy(res, a); // a is now the result res 2962 src/decNumber/decNumber.c if (status!=0) decStatus(res, status, set);// then report status res 2963 src/decNumber/decNumber.c return res; res 2978 src/decNumber/decNumber.c decNumber * decNumberSubtract(decNumber *res, const decNumber *lhs, res 2982 src/decNumber/decNumber.c decAddOp(res, lhs, rhs, set, DECNEG, &status); res 2983 src/decNumber/decNumber.c if (status!=0) decStatus(res, status, set); res 2984 src/decNumber/decNumber.c return res; res 3008 src/decNumber/decNumber.c decNumber * decNumberToIntegralExact(decNumber *res, const decNumber *rhs, res 3016 src/decNumber/decNumber.c if (decNumberIsInfinite(rhs)) decNumberCopy(res, rhs); // an Infinity res 3017 src/decNumber/decNumber.c else decNaNs(res, rhs, NULL, set, &status); // a NaN res 3021 src/decNumber/decNumber.c if (rhs->exponent>=0) return decNumberCopy(res, rhs); res 3027 src/decNumber/decNumber.c decNumberQuantize(res, rhs, &dn, &workset); res 3030 src/decNumber/decNumber.c if (status!=0) decStatus(res, status, set); res 3031 src/decNumber/decNumber.c return res; res 3034 src/decNumber/decNumber.c decNumber * decNumberToIntegralValue(decNumber *res, const decNumber *rhs, res 3038 src/decNumber/decNumber.c decNumberToIntegralExact(res, rhs, &workset); res 3042 src/decNumber/decNumber.c return res; res 3060 src/decNumber/decNumber.c decNumber * decNumberXor(decNumber *res, const decNumber *lhs, res 3069 src/decNumber/decNumber.c decStatus(res, DEC_Invalid_operation, set); res 3070 src/decNumber/decNumber.c return res; res 3075 src/decNumber/decNumber.c uc=res->lsu; // .. res 3097 src/decNumber/decNumber.c decStatus(res, DEC_Invalid_operation, set); res 3098 src/decNumber/decNumber.c return res; res 3105 src/decNumber/decNumber.c res->digits=decGetDigits(res->lsu, uc-res->lsu); res 3106 src/decNumber/decNumber.c res->exponent=0; // integer res 3107 src/decNumber/decNumber.c res->bits=0; // sign=0 res 3108 src/decNumber/decNumber.c return res; // [no status to set] res 3210 src/decNumber/decNumber.c decNumber * decNumberCopyAbs(decNumber *res, const decNumber *rhs) { res 3211 src/decNumber/decNumber.c decNumberCopy(res, rhs); res 3212 src/decNumber/decNumber.c res->bits&=~DECNEG; // turn off sign res 3213 src/decNumber/decNumber.c return res; res 3228 src/decNumber/decNumber.c decNumber * decNumberCopyNegate(decNumber *res, const decNumber *rhs) { res 3229 src/decNumber/decNumber.c decNumberCopy(res, rhs); res 3230 src/decNumber/decNumber.c res->bits^=DECNEG; // invert the sign res 3231 src/decNumber/decNumber.c return res; res 3246 src/decNumber/decNumber.c decNumber * decNumberCopySign(decNumber *res, const decNumber *lhs, res 3250 src/decNumber/decNumber.c decNumberCopy(res, lhs); res 3251 src/decNumber/decNumber.c res->bits&=~DECNEG; // clear the sign res 3252 src/decNumber/decNumber.c res->bits|=sign; // set from rhs res 3253 src/decNumber/decNumber.c return res; res 3591 src/decNumber/decNumber.c static decNumber * decAddOp(decNumber *res, const decNumber *lhs, res 3637 src/decNumber/decNumber.c decNaNs(res, lhs, rhs, set, status); res 3649 src/decNumber/decNumber.c decNumberZero(res); res 3650 src/decNumber/decNumber.c res->bits=bits; // set +/- infinity res 3662 src/decNumber/decNumber.c decCopyFit(res, rhs, set, &residue, status); // copy (as needed) res 3663 src/decNumber/decNumber.c res->bits^=negate; // flip if rhs was negated res 3668 src/decNumber/decNumber.c adjust=lexp-res->exponent; // adjustment needed [if -ve] res 3669 src/decNumber/decNumber.c if (ISZERO(res)) { // both 0: special IEEE 754 rules res 3670 src/decNumber/decNumber.c if (adjust<0) res->exponent=lexp; // set exponent res 3673 src/decNumber/decNumber.c if (set->round!=DEC_ROUND_FLOOR) res->bits=0; res 3674 src/decNumber/decNumber.c else res->bits=DECNEG; // preserve 0 sign res 3679 src/decNumber/decNumber.c if ((res->digits-adjust)>set->digits) { res 3680 src/decNumber/decNumber.c adjust=res->digits-set->digits; // to fit exactly res 3683 src/decNumber/decNumber.c res->digits=decShiftToMost(res->lsu, res->digits, -adjust); res 3684 src/decNumber/decNumber.c res->exponent+=adjust; // set the exponent. res 3690 src/decNumber/decNumber.c decFinish(res, set, &residue, status); // clean and finalize res 3699 src/decNumber/decNumber.c decCopyFit(res, lhs, set, &residue, status); // copy (as needed) res 3705 src/decNumber/decNumber.c adjust=rexp-res->exponent; // adjustment needed [if -ve] res 3707 src/decNumber/decNumber.c if ((res->digits-adjust)>set->digits) { res 3708 src/decNumber/decNumber.c adjust=res->digits-set->digits; // to fit exactly res 3711 src/decNumber/decNumber.c res->digits=decShiftToMost(res->lsu, res->digits, -adjust); res 3712 src/decNumber/decNumber.c res->exponent+=adjust; // set the exponent. res 3717 src/decNumber/decNumber.c decFinish(res, set, &residue, status); // clean and finalize res 3741 src/decNumber/decNumber.c if (res!=lhs) decNumberCopy(res, lhs); // not in place res 3742 src/decNumber/decNumber.c *res->lsu=(Unit)partial; // [copy could have overwritten RHS] res 3750 src/decNumber/decNumber.c if (res!=lhs) decNumberCopy(res, lhs); // not in place res 3751 src/decNumber/decNumber.c *res->lsu=(Unit)partial; res 3753 src/decNumber/decNumber.c res->digits=decGetDigits(res->lsu, D2U(res->digits)); res 3805 src/decNumber/decNumber.c acc=res->lsu; // assume add direct to result res 3810 src/decNumber/decNumber.c || (res==rhs && rhsshift>0)) { // destructive overlap res 3825 src/decNumber/decNumber.c res->bits=(uByte)(bits&DECNEG); // it's now safe to overwrite.. res 3826 src/decNumber/decNumber.c res->exponent=lhs->exponent; // .. operands (even if aliased) res 3829 src/decNumber/decNumber.c res->digits=decUnitAddSub(lhs->lsu, D2U(lhs->digits), res 3833 src/decNumber/decNumber.c if (res->digits<0) { // borrowed... res 3834 src/decNumber/decNumber.c res->digits=-res->digits; res 3835 src/decNumber/decNumber.c res->bits^=DECNEG; // flip the sign res 3842 src/decNumber/decNumber.c if (acc!=res->lsu) { res 3848 src/decNumber/decNumber.c if (res->digits>reqdigits) res 3849 src/decNumber/decNumber.c res->digits=decGetDigits(acc, D2U(res->digits)); res 3850 src/decNumber/decNumber.c decSetCoeff(res, set, acc, res->digits, &residue, status); res 3859 src/decNumber/decNumber.c if (res->digits<maxdigits) { res 3860 src/decNumber/decNumber.c *(acc+D2U(res->digits))=0; // ensure leading 0 is there res 3861 src/decNumber/decNumber.c res->digits=maxdigits; res 3867 src/decNumber/decNumber.c if (res->digits>reqdigits) { res 3868 src/decNumber/decNumber.c res->digits=decGetDigits(acc, D2U(res->digits)); res 3869 src/decNumber/decNumber.c if (res->digits<maxdigits) res->digits=maxdigits; res 3872 src/decNumber/decNumber.c decSetCoeff(res, set, acc, res->digits, &residue, status); res 3876 src/decNumber/decNumber.c decApplyRound(res, set, residue, status); res 3884 src/decNumber/decNumber.c res->digits=decGetDigits(res->lsu, D2U(res->digits)); res 3887 src/decNumber/decNumber.c decFinish(res, set, &residue, status); res 3893 src/decNumber/decNumber.c if (ISZERO(res) && diffsign res 3898 src/decNumber/decNumber.c if (set->round==DEC_ROUND_FLOOR) res->bits|=DECNEG; // sign - res 3899 src/decNumber/decNumber.c else res->bits&=~DECNEG; // sign + res 3908 src/decNumber/decNumber.c return res; res 3981 src/decNumber/decNumber.c static decNumber * decDivideOp(decNumber *res, res 4048 src/decNumber/decNumber.c decNaNs(res, lhs, rhs, set, status); res 4059 src/decNumber/decNumber.c decNumberZero(res); res 4060 src/decNumber/decNumber.c res->bits=bits|DECINF; // set +/- infinity res 4067 src/decNumber/decNumber.c decCopyFit(res, lhs, set, &residue, status); res 4070 src/decNumber/decNumber.c decNumberZero(res); res 4071 src/decNumber/decNumber.c res->bits=bits; // set +/- zero res 4075 src/decNumber/decNumber.c res->exponent=set->emin-set->digits+1; res 4079 src/decNumber/decNumber.c decFinish(res, set, &residue, status); res 4087 src/decNumber/decNumber.c decNumberZero(res); // [after lhs test] res 4091 src/decNumber/decNumber.c decNumberZero(res); res 4095 src/decNumber/decNumber.c res->bits=bits|DECINF; // .. is +/- Infinity res 4103 src/decNumber/decNumber.c if (!set->extended) decNumberZero(res); res 4108 src/decNumber/decNumber.c decNumberCopy(res, lhs); // [zeros always fit] res 4109 src/decNumber/decNumber.c res->bits=bits; // sign as computed res 4110 src/decNumber/decNumber.c res->exponent=exponent; // exponent, too res 4113 src/decNumber/decNumber.c decNumberZero(res); // integer 0 res 4114 src/decNumber/decNumber.c res->bits=bits; // sign as computed res 4118 src/decNumber/decNumber.c decNumberCopy(res, lhs); // [zeros always fit] res 4119 src/decNumber/decNumber.c if (exponent<res->exponent) res->exponent=exponent; // use lower res 4122 src/decNumber/decNumber.c decFinalize(res, set, &residue, status); // check exponent res 4139 src/decNumber/decNumber.c decNumberZero(res); // integer part is 0 res 4143 src/decNumber/decNumber.c res->bits=bits; // set +/- zero res 4152 src/decNumber/decNumber.c decCopyFit(res, lhs, set, &residue, status); res 4153 src/decNumber/decNumber.c decFinish(res, set, &residue, status); res 4426 src/decNumber/decNumber.c decNumberZero(res); // 0 coefficient res 4430 src/decNumber/decNumber.c res->exponent=exp; // .. with proper exponent res 4431 src/decNumber/decNumber.c res->bits=(uByte)(bits&DECNEG); // [cleaned] res 4432 src/decNumber/decNumber.c decFinish(res, set, &residue, status); // might clamp res 4534 src/decNumber/decNumber.c res->exponent=exponent; res 4535 src/decNumber/decNumber.c res->bits=(uByte)(bits&DECNEG); // [cleaned] res 4538 src/decNumber/decNumber.c decSetCoeff(res, set, accnext, accdigits, &residue, status); res 4540 src/decNumber/decNumber.c decFinish(res, set, &residue, status); // final cleanup res 4544 src/decNumber/decNumber.c if (!set->extended && (op==DIVIDE)) decTrim(res, set, 0, 1, &dropped); res 4554 src/decNumber/decNumber.c return res; res 4594 src/decNumber/decNumber.c static decNumber * decMultiplyOp(decNumber *res, const decNumber *lhs, res 4661 src/decNumber/decNumber.c decNaNs(res, lhs, rhs, set, status); res 4662 src/decNumber/decNumber.c return res;} res 4667 src/decNumber/decNumber.c return res;} res 4668 src/decNumber/decNumber.c decNumberZero(res); res 4669 src/decNumber/decNumber.c res->bits=bits|DECINF; // infinity res 4670 src/decNumber/decNumber.c return res;} res 4867 src/decNumber/decNumber.c res->bits=bits; // set sign res 4868 src/decNumber/decNumber.c res->digits=decGetDigits(acc, accunits); // count digits exactly res 4878 src/decNumber/decNumber.c res->exponent=exponent; // OK to overwrite now res 4881 src/decNumber/decNumber.c decSetCoeff(res, set, acc, res->digits, &residue, status); res 4882 src/decNumber/decNumber.c decFinish(res, set, &residue, status); // final cleanup res 4894 src/decNumber/decNumber.c return res; res 4976 src/decNumber/decNumber.c decNumber * decExpOp(decNumber *res, const decNumber *rhs, res 5015 src/decNumber/decNumber.c decNumberZero(res); res 5016 src/decNumber/decNumber.c else decNumberCopy(res, rhs); // +Infinity -> self res 5018 src/decNumber/decNumber.c else decNaNs(res, rhs, NULL, set, status); // a NaN res 5022 src/decNumber/decNumber.c decNumberZero(res); // make clean 1 res 5023 src/decNumber/decNumber.c *res->lsu=1; // .. res 5050 src/decNumber/decNumber.c decNumberZero(res); // set 1 res 5051 src/decNumber/decNumber.c *res->lsu=1; // .. res 5052 src/decNumber/decNumber.c res->digits=decShiftToMost(res->lsu, 1, shift); res 5053 src/decNumber/decNumber.c res->exponent=-shift; // make 1.0000... res 5222 src/decNumber/decNumber.c decCopyFit(res, a, &aset, &residue, status); // copy & shorten res 5223 src/decNumber/decNumber.c decFinish(res, set, &residue, status); // cleanup/set flags res 5230 src/decNumber/decNumber.c return res; res 5321 src/decNumber/decNumber.c decNumber * decLnOp(decNumber *res, const decNumber *rhs, res 5349 src/decNumber/decNumber.c else decNumberCopy(res, rhs); // +Infinity -> self res 5351 src/decNumber/decNumber.c else decNaNs(res, rhs, NULL, set, status); // a NaN res 5355 src/decNumber/decNumber.c decNumberZero(res); // make clean res 5356 src/decNumber/decNumber.c res->bits=DECINF|DECNEG; // set - infinity res 5375 src/decNumber/decNumber.c decNumberFromString(res, LN10, &aset); res 5381 src/decNumber/decNumber.c decNumberFromString(res, LN2, &aset); res 5526 src/decNumber/decNumber.c decCopyFit(res, a, &aset, &residue, status); // copy & shorten res 5527 src/decNumber/decNumber.c decFinish(res, set, &residue, status); // cleanup/set flags res 5533 src/decNumber/decNumber.c return res; res 5558 src/decNumber/decNumber.c static decNumber * decQuantizeOp(decNumber *res, const decNumber *lhs, res 5593 src/decNumber/decNumber.c decNaNs(res, lhs, rhs, set, status); res 5598 src/decNumber/decNumber.c else decNumberCopy(res, lhs); // [nop if in place] res 5624 src/decNumber/decNumber.c decNumberCopy(res, lhs); // [nop if in place] res 5625 src/decNumber/decNumber.c res->exponent=reqexp; // .. just set exponent res 5627 src/decNumber/decNumber.c if (!set->extended) res->bits=0; // subset specification; no -0 res 5645 src/decNumber/decNumber.c decCopyFit(res, lhs, &workset, &residue, status); // fit to result res 5646 src/decNumber/decNumber.c decApplyRound(res, &workset, residue, status); // .. and round res 5650 src/decNumber/decNumber.c if (res->exponent>reqexp) { res 5653 src/decNumber/decNumber.c if (res->digits==reqdigits) { // cannot shift by 1 res 5658 src/decNumber/decNumber.c res->digits=decShiftToMost(res->lsu, res->digits, 1); // shift res 5659 src/decNumber/decNumber.c res->exponent--; // (re)adjust the exponent. res 5662 src/decNumber/decNumber.c if (ISZERO(res) && !set->extended) res->bits=0; // subset; no -0 res 5669 src/decNumber/decNumber.c decNumberCopy(res, lhs); // [it will fit] res 5672 src/decNumber/decNumber.c res->digits=decShiftToMost(res->lsu, res->digits, -adjust); res 5673 src/decNumber/decNumber.c res->exponent+=adjust; // adjust the exponent res 5680 src/decNumber/decNumber.c if (res->exponent>set->emax-res->digits+1) { // too big res 5685 src/decNumber/decNumber.c decFinalize(res, set, &residue, status); // set subnormal flags res 5694 src/decNumber/decNumber.c return res; res 5727 src/decNumber/decNumber.c decNumber * decCompareOp(decNumber *res, const decNumber *lhs, res 5808 src/decNumber/decNumber.c decNaNs(res, lhs, rhs, set, status); // propagate NaN res 5828 src/decNumber/decNumber.c decNumberZero(res); // [always a valid result] res 5830 src/decNumber/decNumber.c *res->lsu=1; res 5831 src/decNumber/decNumber.c if (result<0) res->bits=DECNEG; res 5870 src/decNumber/decNumber.c decCopyFit(res, choice, set, &residue, status); res 5871 src/decNumber/decNumber.c decFinish(res, set, &residue, status); res 5878 src/decNumber/decNumber.c return res; res 6521 src/decNumber/decNumber.c decNumber *res; // result structure res 6527 src/decNumber/decNumber.c res=(decNumber *)malloc(sizeof(decNumber) res 6529 src/decNumber/decNumber.c if (res==NULL) { res 6533 src/decNumber/decNumber.c decCopyFit(res, dn, set, &residue, &newstatus); res 6534 src/decNumber/decNumber.c decApplyRound(res, set, residue, &newstatus); res 6539 src/decNumber/decNumber.c return res; res 7387 src/decNumber/decNumber.c static decNumber * decNaNs(decNumber *res, const decNumber *lhs, res 7403 src/decNumber/decNumber.c if (lhs->digits<=set->digits) decNumberCopy(res, lhs); // easy res 7408 src/decNumber/decNumber.c res->bits=lhs->bits; // need sign etc. res 7409 src/decNumber/decNumber.c uresp1=res->lsu+D2U(set->digits); res 7411 src/decNumber/decNumber.c for (ur=res->lsu, ul=lhs->lsu; ur<uresp1; ur++, ul++) *ur=*ul; res 7413 src/decNumber/decNumber.c res->digits=D2U(set->digits)*DECDPUN; res 7415 src/decNumber/decNumber.c if (res->digits>set->digits) decDecap(res, res->digits-set->digits); res 7418 src/decNumber/decNumber.c res->bits&=~DECSNAN; // convert any sNaN to NaN, while res 7419 src/decNumber/decNumber.c res->bits|=DECNAN; // .. preserving sign res 7420 src/decNumber/decNumber.c res->exponent=0; // clean exponent res 7422 src/decNumber/decNumber.c return res; res 2225 src/dps8/dps8_cpu.h # define LOAD_ACQ_CORE_WORD(res, addr) \ res 2228 src/dps8/dps8_cpu.h res = atomic_load_acq_64((volatile uint64_t *)&M[addr]); \ res 2269 src/dps8/dps8_cpu.h # define LOAD_ACQ_CORE_WORD(res, addr) \ res 2272 src/dps8/dps8_cpu.h res = __atomic_load_n((volatile uint64_t *)&M[addr], \ res 2318 src/dps8/dps8_cpu.h # define LOAD_ACQ_CORE_WORD(res, addr) \ res 2321 src/dps8/dps8_cpu.h res = M[addr]; \ res 7764 src/dps8/dps8_eis.c char * res = formatDecimal (out, & set, op1, n2, (int) e->S2, e->SF2, R, res 7767 src/dps8/dps8_eis.c sim_debug (DBG_CAC, & cpu_dev, "mvn res: '%s'\n", res); res 7815 src/dps8/dps8_eis.c (word9) (res[i] - '0')); res 7818 src/dps8/dps8_eis.c EISwrite49 (& e->ADDR2, & pos, (int) dstTN, (word9) res[i]); res 9621 src/dps8/dps8_eis.c char * res = formatDecimal (out, &set, op1, n2, (int) e->S2, e->SF2, 0, &Ovr, &Trunc); res 9656 src/dps8/dps8_eis.c EISwrite49(&e->ADDR2, &pos, (int) dstTN, (word9) (res[i] - '0')); res 9659 src/dps8/dps8_eis.c EISwrite49(&e->ADDR2, &pos, (int) dstTN, (word9) res[i]); res 10284 src/dps8/dps8_eis.c char *res = formatDecimal(out, &set, op3, n2, (int) e->S2, e->SF2, R, &Ovr, &Trunc); res 10327 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (word9) (res[j] - '0')); res 10330 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (word9) res[j]); res 10665 src/dps8/dps8_eis.c char *res = formatDecimal(out, &set, op3, n3, (int) e->S3, e->SF3, R, &Ovr, &Trunc); res 10708 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (word9) (res[i] - '0')); res 10711 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (word9) res[i]); res 10977 src/dps8/dps8_eis.c char *res = formatDecimal(out, &set, op3, n2, (int) e->S2, e->SF2, R, &Ovr, &Trunc); res 11020 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (word9) (res[i] - '0')); res 11023 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (word9) res[i]); res 11309 src/dps8/dps8_eis.c char *res = formatDecimal(out, &set, op3, n3, (int) e->S3, e->SF3, R, &Ovr, &Trunc); res 11350 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (word9) (res[i] - '0')); res 11353 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (word9) res[i]); res 11580 src/dps8/dps8_eis.c char *res = formatDecimal(out, &set, op3, n2, (int) e->S2, e->SF2, R, &Ovr, &Trunc); res 11619 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (word9) (res[i] - '0')); res 11622 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (word9) res[i]); res 11883 src/dps8/dps8_eis.c char *res = formatDecimal(out, &set, op3, n3, (int) e->S3, e->SF3, R, &Ovr, &Trunc); res 11925 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (word9) (res[i] - '0')); res 11928 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (word9) res[i]); res 12984 src/dps8/dps8_eis.c char *res; res 13009 src/dps8/dps8_eis.c res = formatDecimal(out, &set, op3, n2 -1, (int) e->S2, e->SF2, R, &Ovr, &Trunc); res 13014 src/dps8/dps8_eis.c res[i] = res[i-1]; res 13015 src/dps8/dps8_eis.c res[0] = '0'; res 13016 src/dps8/dps8_eis.c sim_debug (DBG_TRACEEXT, & cpu_dev, "dv2d: addzero n2 %d %s exp %d\n",n2,res,op3->exponent); res 13019 src/dps8/dps8_eis.c res = formatDecimal(out, &set, op3, n2, (int) e->S2, e->SF2, R, &Ovr, &Trunc); res 13023 src/dps8/dps8_eis.c res = formatDecimal(out, &set, op3, n2, (int) e->S2, e->SF2, R, &Ovr, &Trunc); res 13062 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (word9) (res[i] - '0')); res 13065 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (word9) res[i]); res 13412 src/dps8/dps8_eis.c char *res; res 13437 src/dps8/dps8_eis.c res = formatDecimal(out, &set, op3, n3 -1, (int) e->S3, e->SF3, R, &Ovr, &Trunc); res 13442 src/dps8/dps8_eis.c res[i] = res[i-1]; res 13443 src/dps8/dps8_eis.c res[0] = '0'; res 13444 src/dps8/dps8_eis.c sim_debug (DBG_TRACEEXT, & cpu_dev, "dv3d: addzero n3 %d %s exp %d\n",n3,res,op3->exponent); res 13447 src/dps8/dps8_eis.c res = formatDecimal(out, &set, op3, n3, (int) e->S3, e->SF3, R, &Ovr, &Trunc); res 13451 src/dps8/dps8_eis.c res = formatDecimal(out, &set, op3, n3, (int) e->S3, e->SF3, R, &Ovr, &Trunc); res 13492 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (word9) (res[i] - '0')); res 13495 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (word9) res[i]); res 9378 src/dps8/dps8_ins.c word36 res; res 9395 src/dps8/dps8_ins.c res = (word36) do_append_cycle (ABSA_CYCLE, NULL, 0) << 12; res 9397 src/dps8/dps8_ins.c * result = res; res 150 src/dps8/dps8_math128.c uint128 res = construct_128 (a.h - b.h, a.l - b.l); res 152 src/dps8/dps8_math128.c res.h --; res 154 src/dps8/dps8_math128.c return res; res 833 src/dps8/dps8_math128.c uint128 res = divide_128_16 (a, b, & rem); res 835 src/dps8/dps8_math128.c if (res.h != resh || res.l != resl || rem != remainder) { res 839 src/dps8/dps8_math128.c (unsigned long long)res.h, (unsigned long long)res.l, rem); res 850 src/dps8/dps8_math128.c uint128 res = divide_128_32 (a, b, & rem); res 852 src/dps8/dps8_math128.c if (res.h != resh || res.l != resl || rem != remainder) { res 856 src/dps8/dps8_math128.c (unsigned long long)res.h, (unsigned long long)res.l, rem); res 2033 src/dps8/dps8_sys.c res 2082 src/dps8/dps8_sys.c res 2083 src/dps8/dps8_sys.c res 2221 src/dps8/dps8_sys.c res 2222 src/dps8/dps8_sys.c res 2229 src/dps8/dps8_sys.c res 2230 src/dps8/dps8_sys.c res 2231 src/dps8/dps8_sys.c res 2235 src/dps8/dps8_sys.c res 2244 src/dps8/dps8_sys.c word24 res; res 2247 src/dps8/dps8_sys.c if (dbgLookupAddress ((word18) segno, offset, & res, NULL)) res 2250 src/dps8/dps8_sys.c sim_msg ("Address is %08o\n", res); res 194 src/dps8/dps8_utils.c word38 res = op1e + op2e + ci; res 197 src/dps8/dps8_utils.c bool r37 = res & BIT37 ? true : false; res 198 src/dps8/dps8_utils.c bool r36 = res & SIGN36 ? true : false; res 201 src/dps8/dps8_utils.c bool r38 = res & BIT38 ? true : false; res 210 src/dps8/dps8_utils.c res &= MASK36; res 215 src/dps8/dps8_utils.c if (!res) CPT (cpt2L, 30); // zero res 216 src/dps8/dps8_utils.c if (res & SIGN36) CPT (cpt2L, 31); // neg res 235 src/dps8/dps8_utils.c if (res) res 243 src/dps8/dps8_utils.c if (res & SIGN36) res 249 src/dps8/dps8_utils.c sim_debug (DBG_TRACEEXT, & cpu_dev, "Add36b res %012"PRIo64" flags %06o ovf %o\n", res, * flags, * ovf); res 250 src/dps8/dps8_utils.c return res; res 279 src/dps8/dps8_utils.c word38 res = (word38) (((word38s) op1e) - ((word38s) op2e) - ((word38) ci)); res 282 src/dps8/dps8_utils.c bool r37 = (res & BIT37) ? true : false; res 283 src/dps8/dps8_utils.c bool r36 = (res & SIGN36) ? true : false; res 286 src/dps8/dps8_utils.c bool r38 = res & BIT38 ? true : false; res 289 src/dps8/dps8_utils.c res &= MASK36; res 300 src/dps8/dps8_utils.c if (!res) CPT (cpt2L, 30); // zero res 301 src/dps8/dps8_utils.c if (res & SIGN36) CPT (cpt2L, 31); // neg res 320 src/dps8/dps8_utils.c if (res) res 328 src/dps8/dps8_utils.c if (res & SIGN36) res 334 src/dps8/dps8_utils.c return res; res 355 src/dps8/dps8_utils.c word20 res = op1e + op2e + ci; res 358 src/dps8/dps8_utils.c bool r19 = (res & BIT19) ? true : false; res 359 src/dps8/dps8_utils.c bool r18 = (res & SIGN18) ? true : false; res 362 src/dps8/dps8_utils.c bool r20 = res & BIT20 ? true : false; res 365 src/dps8/dps8_utils.c res &= MASK18; res 376 src/dps8/dps8_utils.c if (!res) CPT (cpt2L, 30); // zero res 377 src/dps8/dps8_utils.c if (res & SIGN36) CPT (cpt2L, 31); // neg res 396 src/dps8/dps8_utils.c if (res) res 404 src/dps8/dps8_utils.c if (res & SIGN18) res 410 src/dps8/dps8_utils.c return (word18) res; res 439 src/dps8/dps8_utils.c word20 res = (word20) (((word20s) op1e) - ((word20s) op2e) - ((word20s) ci)); res 442 src/dps8/dps8_utils.c bool r19 = res & BIT19 ? true : false; res 443 src/dps8/dps8_utils.c bool r18 = res & SIGN18 ? true : false; res 446 src/dps8/dps8_utils.c bool r20 = res & BIT20 ? true : false; res 449 src/dps8/dps8_utils.c res &= MASK18; res 460 src/dps8/dps8_utils.c if (!res) CPT (cpt2L, 30); // zero res 461 src/dps8/dps8_utils.c if (res & SIGN36) CPT (cpt2L, 31); // neg res 480 src/dps8/dps8_utils.c if (res) res 488 src/dps8/dps8_utils.c if (res & SIGN18) res 494 src/dps8/dps8_utils.c return res; res 529 src/dps8/dps8_utils.c word74 res = add_128 (op1e, add_128 (op2e, ci)); res 531 src/dps8/dps8_utils.c word74 res = op1e + op2e + ci; res 536 src/dps8/dps8_utils.c bool r73 = isnonzero_128 (and_128 (res, BIT73)); res 537 src/dps8/dps8_utils.c bool r72 = isnonzero_128 (and_128 (res, SIGN72)); res 539 src/dps8/dps8_utils.c bool r73 = res & BIT73 ? true : false; res 540 src/dps8/dps8_utils.c bool r72 = res & SIGN72 ? true : false; res 545 src/dps8/dps8_utils.c bool r74 = isnonzero_128 (and_128 (res, BIT74)); res 547 src/dps8/dps8_utils.c bool r74 = res & BIT74 ? true : false; res 552 src/dps8/dps8_utils.c res = and_128 (res, MASK72); res 554 src/dps8/dps8_utils.c res &= MASK72; res 566 src/dps8/dps8_utils.c if (!res) CPT (cpt2L, 30); // zero res 567 src/dps8/dps8_utils.c if (res & SIGN36) CPT (cpt2L, 31); // neg res 587 src/dps8/dps8_utils.c if (isnonzero_128 (res)) res 589 src/dps8/dps8_utils.c if (res) res 599 src/dps8/dps8_utils.c if (isnonzero_128 (and_128 (res, SIGN72))) res 601 src/dps8/dps8_utils.c if (res & SIGN72) res 608 src/dps8/dps8_utils.c return res; res 666 src/dps8/dps8_utils.c word74 res = subtract_128 (subtract_128 (op1e, op2e), ci); res 670 src/dps8/dps8_utils.c word74 res = (word72) (((word72s) op1e) - ((word72s) op2e) - ((word72s) ci)); res 673 src/dps8/dps8_utils.c sim_debug (DBG_TRACEEXT, & cpu_dev, "Sub72b res %012"PRIo64"%012"PRIo64" flags %06o ovf %o\n", (word36) (rshift_128 (res, 36).l & MASK36), (word36) (res.l & MASK36), * flags, * ovf); res 675 src/dps8/dps8_utils.c sim_debug (DBG_TRACEEXT, & cpu_dev, "Sub72b res %012"PRIo64"%012"PRIo64" flags %06o ovf %o\n", (word36) ((res >> 36) & MASK36), (word36) (res & MASK36), * flags, * ovf); res 680 src/dps8/dps8_utils.c bool r73 = isnonzero_128 (and_128 (res, BIT73)); res 681 src/dps8/dps8_utils.c bool r72 = isnonzero_128 (and_128 (res, SIGN72)); res 683 src/dps8/dps8_utils.c bool r73 = res & BIT73 ? true : false; res 684 src/dps8/dps8_utils.c bool r72 = res & SIGN72 ? true : false; res 689 src/dps8/dps8_utils.c bool r74 = isnonzero_128 (and_128 (res, BIT74)); res 691 src/dps8/dps8_utils.c bool r74 = res & BIT74 ? true : false; res 696 src/dps8/dps8_utils.c res = and_128 (res, MASK72); res 698 src/dps8/dps8_utils.c res &= MASK72; res 710 src/dps8/dps8_utils.c if (!res) CPT (cpt2L, 30); // zero res 711 src/dps8/dps8_utils.c if (res & SIGN36) CPT (cpt2L, 31); // neg res 731 src/dps8/dps8_utils.c if (isnonzero_128 (res)) res 733 src/dps8/dps8_utils.c if (res) res 743 src/dps8/dps8_utils.c if (isnonzero_128 (and_128 (res, SIGN72))) res 745 src/dps8/dps8_utils.c if (res & SIGN72) res 753 src/dps8/dps8_utils.c sim_debug (DBG_TRACEEXT, & cpu_dev, "Sub72b res %012"PRIo64"%012"PRIo64" flags %06o ovf %o\n", (word36) (rshift_128 (res, 36).l & MASK36), (word36) (res.l & MASK36), * flags, * ovf); res 755 src/dps8/dps8_utils.c sim_debug (DBG_TRACEEXT, & cpu_dev, "Sub72b res %012"PRIo64"%012"PRIo64" flags %06o ovf %o\n", (word36) ((res >> 36) & MASK36), (word36) (res & MASK36), * flags, * ovf); res 757 src/dps8/dps8_utils.c return res; res 770 src/dps8/dps8_utils.c word36 res = ((word36) (- ((word36s) op1))) & DMASK; res 776 src/dps8/dps8_utils.c if (!res) CPT (cpt2L, 30); // zero res 777 src/dps8/dps8_utils.c if (res & SIGN36) CPT (cpt2L, 31); // neg res 783 src/dps8/dps8_utils.c if (res & SIGN36) res 788 src/dps8/dps8_utils.c if (res == 0) res 793 src/dps8/dps8_utils.c return res; res 806 src/dps8/dps8_utils.c word18 res = ((word18) (- (word18s) op1)) & MASK18; res 811 src/dps8/dps8_utils.c if (!res) CPT (cpt2L, 30); // zero res 812 src/dps8/dps8_utils.c if (res & SIGN18) CPT (cpt2L, 31); // neg res 817 src/dps8/dps8_utils.c if (res & SIGN18) res 822 src/dps8/dps8_utils.c if (res == 0) res 827 src/dps8/dps8_utils.c return res; res 155 src/simh/sim_sock.c struct addrinfo **res); res 177 src/simh/sim_sock.c struct addrinfo **res) res 325 src/simh/sim_sock.c *res = result;