Lines Matching defs:exp
129 * in 'dpoint' and 'exp'.
136 scan_dpoint_exp(const char *s, const char **dpoint, const char **exp,
142 *exp = NULL;
146 if (*dpoint != NULL || *exp != NULL)
151 if (*exp != NULL)
153 *exp = s;
160 if (coeff == NULL && *exp == NULL) {
204 const char *dpoint = NULL, *exp = NULL;
210 dec->exp = 0;
264 if ((coeff = scan_dpoint_exp(s, &dpoint, &exp, &end)) == NULL)
268 if (exp) {
270 end = exp; exp++;
271 dec->exp = strtoexp(exp);
274 (dec->exp == MPD_SSIZE_MAX ||
275 dec->exp == MPD_SSIZE_MIN)))
288 if (dec->exp < MPD_SSIZE_MIN+(mpd_ssize_t)fracdigits) {
289 dec->exp = MPD_SSIZE_MIN;
292 dec->exp -= (mpd_ssize_t)fracdigits;
298 if (dec->exp > MPD_EXP_INF) {
299 dec->exp = MPD_EXP_INF;
301 if (dec->exp == MPD_SSIZE_MIN) {
302 dec->exp = MPD_SSIZE_MIN+1;
518 * rescaled to a virtual representation with exp = 0. Here
526 * 1) ldigits := dec->digits - dec->exp
528 * 3) exp := ldigits - dplace (initially exp = 0)
539 ldigits = dec->digits + dec->exp;
544 else if (flags&MPD_FMT_FIXED || (dec->exp <= 0 && ldigits > -6)) {
555 dplace = -1 + mod_mpd_ssize_t(dec->exp+2, 3);
1225 mpd_ssize_t exp = a->exp + a->digits - prec;
1236 mpd_qrescale_fmt(result, a, exp, ctx, status);
1238 mpd_qrescale_fmt(result, result, exp+1, ctx, status);
1300 tmp.exp += 2;
1341 if (mpd_iszero(dec) && dec->exp > 0) {
1357 * 3) case 'g': MIN_ETINY <= exp <= MAX_EMAX+1
1358 * case 'e': MIN_ETINY-MAX_PREC <= exp <= MAX_EMAX+1
1359 * case 'f': MIN_ETINY <= exp <= MAX_EMAX+1