Lines Matching full:round

2176  * As fixed point instructions probably have round mode and saturation,
2588 if (vxrm == 0) { /* round-to-nearest-up (add +0.5 LSB) */ in RVVCALL()
2590 } else if (vxrm == 1) { /* round-to-nearest-even */ in RVVCALL()
2597 } else if (vxrm == 3) { /* round-to-odd (OR bits into LSB, aka "jam") */ in RVVCALL()
2600 return 0; /* round-down (truncate) */ in RVVCALL()
2607 uint8_t round = get_round(vxrm, res, 1); in aadd32() local
2609 return (res >> 1) + round; in aadd32()
2616 uint8_t round = get_round(vxrm, res, 1); in aadd64() local
2620 return ((res >> 1) ^ over) + round; in aadd64()
2645 uint8_t round = get_round(vxrm, res, 1); in RVVCALL() local
2647 return (res >> 1) + round; in RVVCALL()
2654 uint8_t round = get_round(vxrm, res, 1); in aaddu64() local
2657 return ((res >> 1) | over) + round; in aaddu64()
2682 uint8_t round = get_round(vxrm, res, 1); in RVVCALL() local
2684 return (res >> 1) + round; in RVVCALL()
2691 uint8_t round = get_round(vxrm, res, 1); in asub64() local
2695 return ((res >> 1) ^ over) + round; in asub64()
2720 uint8_t round = get_round(vxrm, res, 1); in RVVCALL() local
2722 return (res >> 1) + round; in RVVCALL()
2729 uint8_t round = get_round(vxrm, res, 1); in asubu64() local
2732 return ((res >> 1) | over) + round; in asubu64()
2756 uint8_t round; in RVVCALL() local
2760 round = get_round(vxrm, res, 7); in RVVCALL()
2761 res = (res >> 7) + round; in RVVCALL()
2776 uint8_t round; in vsmul16() local
2780 round = get_round(vxrm, res, 15); in vsmul16()
2781 res = (res >> 15) + round; in vsmul16()
2796 uint8_t round; in vsmul32() local
2800 round = get_round(vxrm, res, 31); in vsmul32()
2801 res = (res >> 31) + round; in vsmul32()
2816 uint8_t round; in vsmul64() local
2826 round = get_round(vxrm, lo_64, 63); in vsmul64()
2832 if (round) { in vsmul64()
2864 uint8_t round, shift = b & 0x7; in RVVCALL() local
2867 round = get_round(vxrm, a, shift); in RVVCALL()
2868 res = (a >> shift) + round; in RVVCALL()
2874 uint8_t round, shift = b & 0xf; in vssrl16() local
2876 round = get_round(vxrm, a, shift); in vssrl16()
2877 return (a >> shift) + round; in vssrl16()
2882 uint8_t round, shift = b & 0x1f; in vssrl32() local
2884 round = get_round(vxrm, a, shift); in vssrl32()
2885 return (a >> shift) + round; in vssrl32()
2890 uint8_t round, shift = b & 0x3f; in vssrl64() local
2892 round = get_round(vxrm, a, shift); in vssrl64()
2893 return (a >> shift) + round; in vssrl64()
2916 uint8_t round, shift = b & 0x7; in RVVCALL() local
2918 round = get_round(vxrm, a, shift); in RVVCALL()
2919 return (a >> shift) + round; in RVVCALL()
2924 uint8_t round, shift = b & 0xf; in vssra16() local
2926 round = get_round(vxrm, a, shift); in vssra16()
2927 return (a >> shift) + round; in vssra16()
2932 uint8_t round, shift = b & 0x1f; in vssra32() local
2934 round = get_round(vxrm, a, shift); in vssra32()
2935 return (a >> shift) + round; in vssra32()
2940 uint8_t round, shift = b & 0x3f; in vssra64() local
2942 round = get_round(vxrm, a, shift); in vssra64()
2943 return (a >> shift) + round; in vssra64()
2968 uint8_t round, shift = b & 0xf; in RVVCALL() local
2971 round = get_round(vxrm, a, shift); in RVVCALL()
2972 res = (a >> shift) + round; in RVVCALL()
2987 uint8_t round, shift = b & 0x1f; in vnclip16() local
2990 round = get_round(vxrm, a, shift); in vnclip16()
2991 res = (a >> shift) + round; in vnclip16()
3006 uint8_t round, shift = b & 0x3f; in vnclip32() local
3009 round = get_round(vxrm, a, shift); in vnclip32()
3010 res = (a >> shift) + round; in vnclip32()
3039 uint8_t round, shift = b & 0xf; in RVVCALL() local
3042 round = get_round(vxrm, a, shift); in RVVCALL()
3043 res = (a >> shift) + round; in RVVCALL()
3055 uint8_t round, shift = b & 0x1f; in vnclipu16() local
3058 round = get_round(vxrm, a, shift); in vnclipu16()
3059 res = (a >> shift) + round; in vnclipu16()
3071 uint8_t round, shift = b & 0x3f; in vnclipu32() local
3074 round = get_round(vxrm, a, shift); in vnclipu32()
3075 res = (a >> shift) + round; in vnclipu32()