Home | History | Annotate | Download | only in dist

Lines Matching refs:Precision

401 set FTEMP_EX, 		0			# extended precision
408 set LOCAL_EX, 0 # extended precision
415 set DST_EX, 0 # extended precision
420 set SRC_EX, 0 # extended precision
431 set EXT_BIAS, 0x3fff # extended precision bias
432 set SGL_BIAS, 0x007f # single precision bias
433 set DBL_BIAS, 0x03ff # double precision bias
528 set x_mode, 0x0 # extended precision
529 set s_mode, 0x4 # single precision
530 set d_mode, 0x8 # double precision
1270 # precision format if the src format was single or double and the
1436 # or double precision denorm, inf, or nan, the operand needs to be
1437 # "corrected" in order to have the proper equivalent extended precision
1567 # on extended precision opclass three instructions using pre-decrement or
1596 # the extended precision result is still in fp0. but, we need to save it
1731 # underflow can happen for extended precision. extended precision opclass
1764 # the extended precision result is still in fp0. but, we need to save it
2412 # (1) FP Instructions using extended precision or packed immediate #
2509 # so, now it's immediate data extended precision AND PACKED FORMAT!
2975 # instruction is using an extended precision immediate operand. therefore,
3302 # For the case of an extended precision opclass 3 instruction, #
3490 # for extended precision, if the addressing mode is pre-decrement or
3630 # w/ an exponent value of 0x401e. we convert this to extended precision here.
3637 fmov.x %fp0,FP_SRC(%a6) # store integer as extended precision
3726 # through here. so can double and single precision.
3876 # Also, for extended precision and packed, the #
5518 # scale_to_zero_src(): scale the exponent of extended precision #
5525 # FP_SCR0(a6) = extended precision operand to be scaled #
5528 # FP_SCR0(a6) = scaled extended precision operand #
5578 # FP_SCR0(a6) = extended precision operand to be scaled #
5581 # FP_SCR0(a6) = scaled extended precision operand #
5645 # scale_to_zero_dst(): scale the exponent of extended precision #
5652 # FP_SCR1(a6) = extended precision operand to be scaled #
5655 precision operand #
5706 # FP_SRC(a6) = pointer to extended precision src operand #
5707 # FP_DST(a6) = pointer to extended precision dst operand #
5814 # d0 = rounding precision #
5824 # precision, shift the mantissa bits to the right in order raise the #
5835 # table of exponent threshold values for each precision
5845 # Load the exponent threshold for the precision selected and check
6143 # _round(): round result according to precision/mode #
6150 # d1(hi) = contains rounding precision: #
6178 # ext_grs() looks at the rounding precision and sets the appropriate
6333 # rounding precision.
6336 # d0 = extended precision g,r,s (in d0{31:29})
6342 # selected rounding precision. It is called by the round subroutine
6353 swap %d1 # have d1.w point to round precision
6430 # norm(): normalize the mantissa of an extended precision input. the #
6440 # a0 = pointer fp extended precision operand to normalize #
6502 # a0 = pointer to unnormalized extended precision number #
6603 # a0 = pointer to extended precision operand #
6683 # a0 = points to double precision operand #
6746 # a0 = pointer to single precision operand #
6800 # scaled extended precision number; this is used by #
6812 # d1 = rounding precision/mode #
6815 # a0 = pointer to default underflow result in extended precision #
6828 # precision and the rounding mode to single. #
6973 # a0 = points to extended precision result #
7005 # use the rounding mode, precision, and result sign as in index into the
7064 # _round() - needed to create EXOP for sgl/dbl precision #
7065 # norm() - needed to create EXOP for extended precision #
7066 # ovf_res() - create default overflow result for sgl/dbl precision#
7068 # dst_dbl() - create rounded dbl precision result. #
7069 # dst_sgl() - create rounded sgl precision result. #
7079 # a0 = pointer to extended precision source operand #
7094 # For sgl or dbl precision, overflow or underflow can occur. If #
7096 # For extended precision, the stacked <ea> must be fixed along #
7102 # precision. Then, bindec() is called to create the appropriate #
7275 # we copy the extended precision result to FP_SCR0 so that the reserved
7291 # we must not yet write the extended precision data to the stack
7742 # dst_dbl(): create double precision value from extended prec. #
7748 # a0 = pointer to source operand in extended precision #
7751 # d0 = hi(double precision result) #
7752 # d1 = lo(double precision result) #
7756 # Changes extended precision to double precision. #
7781 subi.w &EXT_BIAS,%d0 # subtract extended precision bias
7782 addi.w &DBL_BIAS,%d0 # add double precision bias
7810 # dst_sgl(): create single precision value from extended prec #
7815 # a0 = pointer to source operand in extended precision #
7818 # d0 = single precision result #
7822 # Changes extended precision to single precision. #
7846 subi.w &EXT_BIAS,%d0 # subtract extended precision bias
7847 addi.w &SGL_BIAS,%d0 # add single precision bias
7977 # a0 = pointer to extended precision source operand #
7978 # a1 = pointer to extended precision destination operand #
7987 # norms/denorms into ext/sgl/dbl precision. #
8044 mov.w 2+L_SCR3(%a6),%d1 # fetch precision
8058 # - do the multiply to the proper precision and rounding mode.
8093 # - do the multiply to the proper precision and rounding mode in order to
8097 # extended precision. if the original operation was extended, then we have this
8099 # multiply using extended precision and the correct rounding mode. the result
8136 # - if precision is extended, then we have the EXOP. simply bias the exponent
8137 # with an extra -0x6000. if the precision is single or double, we need to
8138 # calculate a result rounded to extended precision.
8177 # - do the multiply to the proper precision and rounding mode in order to
8204 # - do the multiply to the proper precision and rounding mode in order to
8208 # extended precision. if the original operation was extended, then we have this
8210 # multiply using extended precision and the correct rounding mode. the result
8217 # for fun, let's use only extended precision, round to zero. then, let
8253 andi.b &0xc0,%d1 # is precision extended?
8290 # -use the correct rounding mode and precision. this code favors operations
8473 # a0 = pointer to extended precision source operand #
8482 # norms into extended, single, and double precision. #
8495 ori.b &s_mode*0x10,%d0 # insert sgl precision
8501 ori.b &d_mode*0x10,%d0 # insert dbl precision
8514 andi.b &0xc0,%d0 # is precision extended?
8518 # precision selected is extended. so...we cannot get an underflow
8519 # or overflow because of rounding to the correct precision. so...
8530 # for an extended precision DENORM, the UNFL exception bit is set
8534 andi.b &0xc0,%d0 # is precision extended?
8569 # operand is to be rounded to single or double precision
8576 # operand is to be rounded to single precision
8619 # operand is to be rounded to double precision
8660 # therefore, we must return the result rounded to extended precision.
8716 # the INEX2 bit has already been updated by the round to the correct precision.
8794 # a0 = pointer to extended precision source operand #
8795 # a1 = pointer to extended precision destination operand #
8804 # norms/denorms into ext/sgl/dbl precision. #
8867 mov.w 2+L_SCR3(%a6),%d1 # fetch precision
8955 andi.b &0xc0,%d1 # is precision extended?
9023 andi.b &0xc0,%d1 # is precision extended?
9248 # a0 = pointer to extended precision source operand #
9257 # norms/denorms into ext/sgl/dbl precisions. Extended precision can be #
9269 ori.b &s_mode*0x10,%d0 # insert sgl precision
9287 andi.b &0xc0,%d0 # is precision extended?
9291 # precision selected is extended. so...we can not get an underflow
9292 # or overflow because of rounding to the correct precision. so...
9307 # for an extended precision DENORM, the UNFL exception bit is set
9311 andi.b &0xc0,%d0 # is precision extended?
9356 # operand is to be rounded to single precision
9399 # operand is to be rounded to double precision
9440 # therefore, we must return the result rounded to extended precision.
9496 # the INEX2 bit has already been updated by the round to the correct precision.
9567 # a0 = pointer to extended precision source operand #
9652 # a0 = pointer to extended precision source operand #
9653 # d0 = round precision/mode #
9758 # a0 = pointer to extended precision source operand #
9759 # d0 = round precision/mode #
9866 # a0 = pointer to extended precision
9867 # d0 = rnd precision/mode #
9875 # norms into extended, single, and double precision. #
9876 # Simply clear sign for extended precision norm. Ext prec denorm #
9878 # Double and single precision can overflow and underflow. First, #
9892 ori.b &s_mode*0x10,%d0 # insert sgl precision
9898 ori.b &d_mode*0x10,%d0 # insert dbl precision
9910 andi.b &0xc0,%d0 # is precision extended?
9914 # precision selected is extended. so...we can not get an underflow
9915 # or overflow because of rounding to the correct precision. so...
9927 # for an extended precision DENORM, the UNFL exception bit is set
9931 andi.b &0xc0,%d0 # is precision extended?
9974 # operand is to be rounded to single precision
10017 # operand is to be rounded to double precision
10055 # therefore, we must return the result rounded to extended precision.
10111 # the INEX2 bit has already been updated by the round to the correct precision.
10183 # a0 = pointer to extended precision source operand #
10184 # a1 = pointer to extended precision destination operand #
10379 # a0 = pointer to extended precision source operand #
10380 # a1 = pointer to extended precision destination operand #
10389 # norms/denorms into ext/sgl/dbl precision. #
10632 # Single Precision Multiply: inputs are not both normalized; what are they?
10720 # a0 = pointer to extended precision source operand #
10721 # a1 = pointer to extended precision destination operand #
10730 # norms/denorms into ext/sgl/dbl precision. #
10771 mov.w 2+L_SCR3(%a6),%d1 # fetch precision,mode
10840 andi.b &0x30,%d0 # kill precision
11059 # a0 = pointer to extended precision source operand #
11060 # a1 = pointer to extended precision destination operand #
11068 # norms into extended, single, and double precision. #
11182 andi.b &0xc0,%d1 # is precision extended?
11247 andi.b &0xc0,%d1 # is precision extended?
11280 # result is equal to the smallest normalized number in the selected precision
11281 # if the precision is extended, this result could not have come from an
11301 # exponent for the selected precision. also, the mantissa is equal to
11512 # a0 = pointer to extended precision source operand #
11513 # a1 = pointer to extended precision destination operand #
11521 # norms into extended, single, and double precision. #
11635 andi.b &0xc0,%d1 # is precision extended?
11700 andi.b &0xc0,%d1 # is precision extended?
11733 # result is equal to the smallest normalized number in the selected precision
11734 # if the precision is extended, this result could not have come from an
11754 # exponent for the selected precision. also, the mantissa is equal to
11955 # a0 = pointer to extended precision source operand #
11964 # norms/denorms into ext/sgl/dbl precision. #
11977 ori.b &s_mode*0x10,%d0 # insert sgl precision
11983 ori.b &d_mode*0x10,%d0 # insert dbl precision
11999 andi.b &0xc0,%d0 # is precision extended?
12016 andi.b &0xc0,%d0 # is precision extended?
12035 # operand is to be rounded to single precision
12080 # operand is to be rounded to double precision
12137 # therefore, we must return the result rounded to extended precision.
12193 # the INEX2 bit has already been updated by the round to the correct precision.
12838 # fp0 = extended precision value to store #
12906 # decbin() - convert packed to binary extended precision #
12922 # convert the packed value to an extended precision binary value. #
12965 # a0 to extended-precision value in fp0. #
13432 # bindec(): Converts an input in extended precision format to bcd format#
13435 # a0 = pointer to the input extended precision value in memory. #
13456 # value is viewed as 2^^e * 1.f in extended precision. #
13535 # Constants in extended precision
13541 # Constants in single precision
13637 # as 2^^e * 1.f in extended precision. This value is stored
13995 # mode and precision. The original FPCR is saved in L_SCR1.
14070 # in extended precision, so the use of a previous power-of-ten