Home
last modified time | relevance | path

Searched refs:rounding (Results 1 – 25 of 117) sorted by relevance

12345

/freebsd-14.2/lib/libc/softfloat/
H A Dtimesoftfloat.txt13 point routines. Each routine can be evaluated for every relevant rounding
14 mode, tininess mode, and/or rounding precision.
63 the four rounding modes, one after the other. If the rounding mode is not
65 some operations do not require rounding--only the nearest/even rounding mode
68 tininess detected before rounding and after rounding. For extended double-
72 mode, a single tininess mode, and/or a single rounding precision with
108 For extended double-precision functions affected by rounding precision
114 ignored for functions not affected by rounding precision control.
120 the rounding mode is nearest/even. The other rounding mode options are not
121 timed. Likewise, `-tozero' forces rounding to zero; `-down' forces rounding
[all …]
H A Dsoftfloat.txt135 All four rounding modes prescribed by the IEC/IEEE Standard are implemented
136 for all operations that require rounding. The rounding mode is selected
139 `float_round_down', or `float_round_up'. The rounding mode is initialized
146 For extended double precision (`floatx80') only, the rounding precision
157 (`float64'), respectively. When rounding to reduced precision, additional
158 bits in the result significand beyond the rounding point are set to zero.
183 for underflow either before or after rounding. The choice is made by
186 Detecting tininess after rounding is better because it results in fewer
231 integer value, the operand is rounded according to the current rounding
276 remainder functions are always exact and so require no rounding.
[all …]
/freebsd-14.2/contrib/gdtoa/
H A Dstrtorf.c69 strtorf(s, sp, rounding, f) CONST char *s; char **sp; int rounding; float *f; in strtorf() argument
71 strtorf(CONST char *s, char **sp, int rounding, float *f)
81 if (rounding != FPI_Round_near) {
83 fpi1.rounding = rounding;
H A Dstrtord.c73 strtord_l(s, sp, rounding, d, locale) CONST char *s; char **sp; int rounding; in strtord_l() argument
76 strtord_l(CONST char *s, char **sp, int rounding, double *d, locale_t locale)
86 if (rounding != FPI_Round_near) {
88 fpi1.rounding = rounding;
H A DstrtorxL.c88 strtorxL(s, sp, rounding, L) CONST char *s; char **sp; int rounding; void *L; in strtorxL() argument
90 strtorxL(CONST char *s, char **sp, int rounding, void *L)
100 if (rounding != FPI_Round_near) {
102 fpi1.rounding = rounding;
H A DstrtorQ.c106 strtorQ_l(s, sp, rounding, L, locale) CONST char *s; char **sp; int rounding; in strtorQ_l() argument
109 strtorQ_l(CONST char *s, char **sp, int rounding, void *L, locale_t locale)
119 if (rounding != FPI_Round_near) {
121 fpi1.rounding = rounding;
H A Dstrtorx.c109 strtorx_l(s, sp, rounding, L, locale) CONST char *s; char **sp; int rounding; in strtorx_l() argument
112 strtorx_l(CONST char *s, char **sp, int rounding, void *L, locale_t locale)
122 if (rounding != FPI_Round_near) {
124 fpi1.rounding = rounding;
H A Dstrtordd.c175 strtordd(s, sp, rounding, dd) CONST char *s; char **sp; int rounding; double *dd; in strtordd() argument
177 strtordd(CONST char *s, char **sp, int rounding, double *dd)
191 if (rounding != FPI_Round_near) {
193 fpi1.rounding = rounding;
H A DREADME21 http://cm.bell-labs.com/cm/cs/what/ampl/REFS/rounding.ps.gz
59 helper routines: one for round-nearest (or the current rounding
72 one with rounding direction specified:
127 the bottom of the exponent range. To get correct rounding, this
139 arithmetic with the default rounding mode (round-to-nearest) and, on
141 (53-bit) rounding precision. If the machine uses (the equivalent of)
150 rounding precision on systems (such as Intel IA32 systems) that may
151 suffer double rounding due to use of extended-precision registers.
198 rounding mode.
322 Field fpi->rounding indicates the desired rounding direction, with
[all …]
H A Dgethex.c157 switch(fpi->rounding) {
174 switch(fpi->rounding) {
269 switch (fpi->rounding) {
312 switch(fpi->rounding) {
H A Dchanges3 (fixed-point mode); fix rounding bug in these modes when the input
5 i.e., when the result, before rounding, would be empty but might
18 rounding, would be empty, but rounds to one digit: *decpt was low by
119 that caused one-bit rounding errors in certain denormal numbers, such
287 testbase program is unhappy with this new rounding, as it can
322 loop with a boundary case of directed rounding. Example input to
347 IEEE arithmetic (with 53-bit rounding precision on 80x87 chips).
429 With decimal input, strtod honors the rounding mode automatically.
469 -DHonor_FLT_ROUNDS: in rounding modes other than "to nearest",
474 rounding mode from fegetround() rather than FLT_ROUNDS, unless
[all …]
H A Dgdtoa_fltrnds.h17 fpi1.rounding = Rounding;
H A Dprintf.c089 int rounding;
93 enum { /* FPI.rounding values: same as FLT_ROUNDS */
520 fpi1 = *fpb.fpi; fpi1.rounding = Rounding; fpb.fpi = &fpi1;}
527 fpi1 = *fpb.fpi; fpi1.rounding = Rounding; fpb.fpi = &fpi1;}
582 int rounding = fpi->rounding;
584 if (rounding > FPI_Round_near && b->sign)
585 rounding = FPI_Round_up + FPI_Round_down - rounding;
586 if (rounding == FPI_Round_down)
587 rounding = FPI_Round_zero;
593 switch(rounding) {
/freebsd-14.2/contrib/llvm-project/compiler-rt/lib/builtins/
H A Dfp_mul_impl.inc10 // rounding (to nearest, ties to even).
98 // The result is denormal before rounding.
112 // The result is normal before rounding. Insert the exponent.
120 // Perform the final rounding. The final result may overflow to infinity,
122 // We use the default IEEE-754 round-to-nearest, ties-to-even rounding mode.
H A Dfp_add_impl.inc9 // This file implements soft-float addition with the IEEE-754 default rounding
93 // bottom bit to get rounding correct.
133 // The result is denormal before rounding. The exponent is zero and we
151 // Perform the final rounding. The result may overflow to infinity, but
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/RISCV/
H A DRISCVInstrInfoZfbfmin.td67 // rounding mode has no effect for bf16->f32.
71 // [u]int->bf16. Match GCC and default to using dynamic rounding mode.
78 // rounding mode has no effect for bf16->f32.
82 // [u]int->bf16. Match GCC and default to using dynamic rounding mode.
H A DRISCVInstrInfoVSDPatterns.td114 // Value to indicate no rounding mode change in
214 // Value to indicate no rounding mode change in
416 // Value to indicate no rounding mode change in
476 // Value to indicate no rounding mode change in
627 // Value to indicate no rounding mode change in
640 // Value to indicate no rounding mode change in
651 // Value to indicate no rounding mode change in
671 // Value to indicate no rounding mode change in
683 // Value to indicate no rounding mode change in
692 // Value to indicate no rounding mode change in
[all …]
H A DRISCVInstrInfoZfh.td473 // half->int32 with current rounding mode.
493 // half->int32 with current rounding mode.
519 // half->int64 with current rounding mode.
527 // [u]int->fp. Match GCC and default to using dynamic rounding mode.
549 // half->int64 with current rounding mode.
557 // [u]int->fp. Match GCC and default to using dynamic rounding mode.
605 // half->int32 with current rounding mode.
621 // half->int32 with current rounding mode.
637 // half->int64 with current rounding mode.
645 // [u]int->fp. Match GCC and default to using dynamic rounding mode.
[all …]
H A DRISCVInstrInfoF.td119 // Floating-point rounding mode
136 // for historical/legacy reasons. fcvt functions where the rounding mode
139 // with the rounding mode set to something other than 'rne', we retain this
704 // float->int32 with current rounding mode.
710 // [u]int->float. Match GCC and default to using dynamic rounding mode.
724 // float->int32 with current rounding mode.
730 // [u]int->float. Match GCC and default to using dynamic rounding mode.
754 // float->int64 with current rounding mode.
762 // [u]int->fp. Match GCC and default to using dynamic rounding mode.
788 // float->int64 with current rounding mode.
[all …]
/freebsd-14.2/lib/libc/gdtoa/
H A D_ldtoa.c74 fpi.rounding ^= (fpi.rounding >> 1) & u.bits.sign; in __ldtoa()
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/M68k/
H A DM68kInstrArithmetic.td997 let Uses = !if(!eq(rounding, ""), [FPC], []);
1004 bits<7> Mode = !cond(!eq(rounding, "s"): single,
1005 !eq(rounding, "d"): double,
1006 !eq(rounding, ""): extended);
1013 class MxFUnary_FF<MxOpBundle Opnd, string rounding,
1016 "f"#rounding#mnemonic#".x\t$src, $dst", rounding, [(null_frag)]> {
1034 foreach rounding = ["", "s", "d"] in {
1044 rounding, mnemonic, opmode>;
1056 class MxFBinary_FF<MxOpBundle Opnd, string rounding,
1059 "f"#rounding#mnemonic#".x\t$opd, $dst", rounding, [(null_frag)]> {
[all …]
H A DM68kInstrData.td634 string rounding = "">
636 "f"#rounding#"move."#size#"\t$src, $dst", pattern> {
638 let Uses = !if(!eq(rounding, ""), [FPC], []);
641 let Predicates = [!if(!eq(rounding, ""), AtLeastM68881, AtLeastM68040)];
645 class MxFMove_FF<string rounding, int size,
648 [(null_frag)], rounding> {
661 !cond(!eq(rounding, "s"): 0b1000000,
662 !eq(rounding, "d"): 0b1000100,
668 foreach rounding = ["", "s", "d"] in {
669 def F # !toupper(rounding) # MOV80fp_fp : MxFMove_FF<rounding, 80>;
[all …]
/freebsd-14.2/contrib/arm-optimized-routines/math/
H A DREADME.contributors35 - All standard rounding modes need to be supported but in non-default rounding
49 - Vector math code does not need to work in non-nearest rounding mode and error
74 - The code should be reasonably performant on x86_64 too, e.g. some rounding
/freebsd-14.2/contrib/arm-optimized-routines/math/tools/
H A Dexp.sollya9 b = b + b*0x1p-16; // increase interval for non-nearest rounding (TOINT_NARROW)
30 // double interval error for non-nearest rounding
/freebsd-14.2/contrib/llvm-project/llvm/lib/Target/Sparc/
H A DLeonFeatures.td50 "LEON3 erratum detection: Detects any rounding mode change "
51 "request: use only the round-to-nearest rounding mode"

12345