s64 ieee754sp_tlong(union ieee754sp x)
{
u32 residue; int round; int sticky; int odd;
COMPXDP; /* <-- need 64-bit mantissa tmp */
ieee754_clearcx();
EXPLODEXSP;
FLUSHXSP;
switch (xc) { case IEEE754_CLASS_SNAN: case IEEE754_CLASS_QNAN:
ieee754_setcx(IEEE754_INVALID_OPERATION); return ieee754di_indef();
case IEEE754_CLASS_INF:
ieee754_setcx(IEEE754_INVALID_OPERATION); return ieee754di_overflow(xs);
case IEEE754_CLASS_ZERO: return0;
case IEEE754_CLASS_DNORM: case IEEE754_CLASS_NORM: break;
} if (xe >= 63) { /* look for valid corner case */ if (xe == 63 && xs && xm == SP_HIDDEN_BIT) return -0x8000000000000000LL; /* Set invalid. We will only use overflow for floating
point overflow */
ieee754_setcx(IEEE754_INVALID_OPERATION); return ieee754di_overflow(xs);
} /* oh gawd */ if (xe > SP_FBITS) {
xm <<= xe - SP_FBITS;
} elseif (xe < SP_FBITS) { if (xe < -1) {
residue = xm;
round = 0;
sticky = residue != 0;
xm = 0;
} else {
residue = xm << (32 - SP_FBITS + xe);
round = (residue >> 31) != 0;
sticky = (residue << 1) != 0;
xm >>= SP_FBITS - xe;
}
odd = (xm & 0x1) != 0x0; switch (ieee754_csr.rm) { case FPU_CSR_RN: if (round && (sticky || odd))
xm++; break; case FPU_CSR_RZ: break; case FPU_CSR_RU: /* toward +Infinity */ if ((round || sticky) && !xs)
xm++; break; case FPU_CSR_RD: /* toward -Infinity */ if ((round || sticky) && xs)
xm++; break;
} if ((xm >> 63) != 0) { /* This can happen after rounding */
ieee754_setcx(IEEE754_INVALID_OPERATION); return ieee754di_overflow(xs);
} if (round || sticky)
ieee754_setcx(IEEE754_INEXACT);
} if (xs) return -xm; else return xm;
}
Messung V0.5 in Prozent
¤ 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.0.10Bemerkung:
(vorverarbeitet am 2026-09-28)
¤
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.