YoushouldhavereceivedcopiesoftheGNUGeneralPublicLicenseandthe GNULesserGeneralPublicLicensealongwiththeGNUMPLibrary.Ifnot,
see https://www.gnu.org/licenses/. */
#include"gmp-impl.h"
/* expecting x and y both with non-zero high limbs */ #define mpn_cmp_twosizes_lt(xp,xsize, yp,ysize) \
((xsize) < (ysize) \
|| ((xsize) == (ysize) && mpn_cmp (xp, yp, xsize) < 0))
/* sub>=0 means an addmul w += x*y, sub<0 means a submul w -= x*y.
if (wsize_signed == 0)
{
mp_limb_t high; /* Nothing to add to, just set w=x*y. No w==x or w==y overlap here,
since we know x,y!=0 but w==0. */ if (x == y)
{
mpn_sqr (wp, PTR(x),xsize);
high = wp[tsize-1];
} else
high = mpn_mul (wp, PTR(x),xsize, PTR(y),ysize);
tsize -= (high == 0);
SIZ(w) = (sub >= 0 ? tsize : -tsize); return;
}
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.