Lines Matching refs:ROUND
532 set rn_mode, 0x0 # round-to-nearest
533 set rz_mode, 0x1 # round-to-zero
534 set rm_mode, 0x2 # round-tp-minus-infinity
535 set rp_mode, 0x3 # round-to-plus-infinity
5018 # d0 = round precision,mode #
5238 fmov.l %d0,%fpcr # restore users round mode,prec
5300 fmov.l %d0,%fpcr # restore users round mode,prec
5323 fmov.l %d0,%fpcr # restore users round mode,prec
5330 fmov.l %d0,%fpcr # restore users round mode,prec
5727 # d0 = round precision,mode #
5947 fmov.l %d0,%fpcr # restore users round mode,prec
5986 fmov.l %d0,%fpcr # restore users round mode,prec
5998 fmov.l %d0,%fpcr # restore users round mode,prec
6157 # d0 = round precision,mode #
6607 # d0 = round precision,mode #
6708 # d0 = round precision,mode #
6765 fmov.l (%sp)+,%fpcr # restore users round prec,mode
6782 fmov.l %d0,%fpcr # load round mode,prec
6804 # d0 = round precision,mode #
6848 # Step 2. Calculate N = round-to-nearest-int( X * 64/log2 ). #
6851 # 2.2 N := round-to-nearest-integer( X * 64/log2 ). #
6860 # N := round-to-nearest-integer(Z) #
6962 # 8.2 N := round-to-integer( X * 64/log2 ) #
7007 # Step 2. Calculate N = round-to-nearest-int( X * 64/log2 ). #
7008 # 2.1 N := round-to-nearest-integer( X * 64/log2 ). #
7685 # d0 = round precision,mode #
7799 # d0 = round precision,mode #
7917 # d0 = round precision,mode #
7948 # 6. (|X| >= 50 log2) Tanh(X) = +-1 (round to nearest). Thus, we #
8004 fmov.l %d0,%fpcr # restore users round prec,mode
8046 fmov.l %d0,%fpcr # restore users round prec,mode
8052 fmov.l %d0,%fpcr # restore users round prec,mode
8066 fmov.l %d0,%fpcr # restore users round prec,mode
8083 # d0 = round precision,mode #
8570 fadd.s one(%pc),%fp0 # X := ROUND(1+Z)
8678 # d0 = round precision,mode #
8768 # d0 = round precision,mode #
8785 # Notes: Default means round-to-nearest mode, no floating-point #
8799 # Notes: Default means round-to-nearest mode, no floating-point #
8812 # Notes: Default means round-to-nearest mode, no floating-point #
8826 # Notes: Default means round-to-nearest mode, no floating-point #
8932 # d0 = round precision,mode #
8964 # N := round-to-int(y). Decompose N as #
9122 fmov.l %fp1,INT(%a6) # N = ROUND-TO-INT(64 X)
9168 fmov.l %d0,%fpcr # restore users round prec,mode
9299 fmov.l %d0,%fpcr # restore users round prec,mode
9466 bne.b not_ext # if xprec, do not call round
9476 # call round() to round the answer to the proper precision.
9486 bsr.l _round # round the mantissa
9715 # d0 = round precision,mode #
10081 fmov.x %fp0,%fp0 # capture exceptions & round
11785 # for fun, let's use only extended precision, round to zero. then, let
12042 # d0 = round prec/mode #
12284 # the INEX2 bit has already been updated by the round to the correct precision.
12285 # now, round to extended(and don't alter the FPSR).
13064 # the INEX2 bit has already been updated by the round to the correct precision.
13065 # now, round to extended(and don't alter the FPSR).
13221 # d0 = round precision/mode #
13327 # d0 = round precision/mode #
13679 # the INEX2 bit has already been updated by the round to the correct precision.
13680 # now, round to extended(and don't alter the FPSR).
13753 # d0 = round prec/mode #
15761 # the INEX2 bit has already been updated by the round to the correct precision.
15762 # now, round to extended(and don't alter the FPSR).
20178 # d0 = round prec,mode #
20472 fmov.s %fp0,%d0 # store does convert and round
20500 # so, denorm and round and then use generic store single routine to
20667 bsr.l _round # round the DENORM
20710 fmov.d %fp0,L_SCR1(%a6) # store does convert and round
20729 # so, denorm and round and then use generic store double routine to
20855 # Note: no attempt is made to round the extended value to double. #
21697 # d0 = guard,round,sticky #
21703 # mantissa bits right, maintain the value of the guard, round, and #
21759 # %d0{31:29} : initial guard,round,sticky #
21763 # %d0{31:29} : final guard,round,sticky #
22020 # _round(): round result according to precision/mode #
22057 # If (G,R,S == 0) then result is exact and round is done, else set
22063 beq.w truncate # yes; round is complete
22081 # ROUND PLUS INFINITY #
22090 swap %d1 # set up d1 for round prec.
22098 # ROUND MINUS INFINITY #
22107 swap %d1 # set up d1 for round prec.
22115 # ROUND NEAREST #
22118 # Note that this will round to even in case of a tie. #
22124 swap %d1 # set up d1 for round prec.
22209 # ext_grs(): extract guard, round and sticky bits according to
22214 # d1 = {PREC,ROUND}
22216 # d0{31:29} = guard, round, sticky
22218 # The ext_grs extract the guard/round/sticky bits according to the
22219 # selected rounding precision. It is called by the round subroutine
22221 # updated guard,round,sticky in d0{31:29}
22223 # Notes: the ext_grs uses the round PREC, and therefore has to swap d1
22225 # routine is tightly tied to the round routine and not meant to
22230 swap %d1 # have d1.w point to round precision
22680 # single round prec and extended prec mode. #
22684 # _round() - round denormalized number according to rnd prec #
22699 # according to the scale factor passed in d0. Then, round the #
22735 bsr.l _round # round the denorm
22795 bsr.l _round # round the denorm
23535 # If INEX is set, round error occurred. This is #
24001 # If INEX is set, round error occurred. This is compensated