Lines Matching defs:pm

36  * Rounds decimal record *pd according to modes in *pm, recording exceptions
42 decimal_round(decimal_mode *pm, decimal_record *pd, fp_exception_field_type *ps,
52 switch (pm->rd) {
85 if (pm->df == floating_form) { /* For E format, simply
337 _unpacked_to_decimal(unpacked *px, decimal_mode *pm, decimal_record *pd,
352 if ((pm->ndigits >= DECIMAL_STRING_LENGTH) ||
353 ((pm->df == floating_form) && (pm->ndigits < 1))) { /* Gross overflow or bad
395 if (pm->df == floating_form)
396 nsig = pm->ndigits + 1; /* Significant digits wanted
410 if (((pm->df == fixed_form) && (pm->ndigits >= 0)) ||
411 ((pm->df == floating_form) && ((pm->ndigits + 1) > intdigs))) { /* Need to compute
413 if (pm->df == floating_form) { /* Need more significant
415 nsig = pm->ndigits + 2 - intdigs; /* Add two for rounding,
422 nfrac = pm->ndigits + 2; /* Add two for rounding,
430 if (pm->df == floating_form) { /* Combine integer and fraction for E
433 if (idsbound > pm->ndigits)
434 idsbound = pm->ndigits;
439 if (idsbound > pm->ndigits)
440 idsbound = pm->ndigits;
443 if (ids == pm->ndigits) { /* Integer part had enough
481 idsbound = pm->ndigits - ids;
522 for (; ids < pm->ndigits; ids++)
527 decimal_round(pm, pd, ps, round, sticky);
529 if (pm->ndigits >= 0) { /* Normal F format. */
530 if ((intdigs + pm->ndigits) >= DECIMAL_STRING_LENGTH)
538 if (idsbound > pm->ndigits)
539 idsbound = pm->ndigits;
550 for (; i < pm->ndigits; i++)
572 decimal_round(pm, pd, ps, round, sticky);
574 int roundpos = -pm->ndigits;
630 decimal_round(pm, pd, ps, round, sticky);
642 double_to_decimal(double *px, decimal_mode *pm, decimal_record *pd,
663 _unpacked_to_decimal(&u, pm, pd, ps);
668 quadruple_to_decimal(quadruple *px, decimal_mode *pm, decimal_record *pd,
695 _unpacked_to_decimal(&u, pm, pd, ps);