Lines Matching refs:mode

390 fp16_unpack(int *sgn, int *exp, uint16_t *mnt, uint16_t x, int mode,
403 if (mode & FPLIB_FZ16)
409 fp32_unpack(int *sgn, int *exp, uint32_t *mnt, uint32_t x, int mode,
421 if ((mode & FPLIB_FZ) && *mnt) {
429 fp64_unpack(int *sgn, int *exp, uint64_t *mnt, uint64_t x, int mode,
441 if ((mode & FPLIB_FZ) && *mnt) {
521 fp16_process_NaN(uint16_t a, int mode, int *flags)
527 return mode & FPLIB_DN ? fp16_defaultNaN() : a;
531 fp32_process_NaN(uint32_t a, int mode, int *flags)
537 return mode & FPLIB_DN ? fp32_defaultNaN() : a;
541 fp64_process_NaN(uint64_t a, int mode, int *flags)
547 return mode & FPLIB_DN ? fp64_defaultNaN() : a;
551 fp16_process_NaNs(uint16_t a, uint16_t b, int mode, int *flags)
560 return fp16_process_NaN(a, mode, flags);
562 return fp16_process_NaN(b, mode, flags);
566 return fp16_process_NaN(a, mode, flags);
568 return fp16_process_NaN(b, mode, flags);
574 fp32_process_NaNs(uint32_t a, uint32_t b, int mode, int *flags)
583 return fp32_process_NaN(a, mode, flags);
585 return fp32_process_NaN(b, mode, flags);
589 return fp32_process_NaN(a, mode, flags);
591 return fp32_process_NaN(b, mode, flags);
597 fp64_process_NaNs(uint64_t a, uint64_t b, int mode, int *flags)
606 return fp64_process_NaN(a, mode, flags);
608 return fp64_process_NaN(b, mode, flags);
612 return fp64_process_NaN(a, mode, flags);
614 return fp64_process_NaN(b, mode, flags);
620 fp16_process_NaNs3(uint16_t a, uint16_t b, uint16_t c, int mode, int *flags)
631 return fp16_process_NaN(a, mode, flags);
633 return fp16_process_NaN(b, mode, flags);
635 return fp16_process_NaN(c, mode, flags);
639 return fp16_process_NaN(a, mode, flags);
641 return fp16_process_NaN(b, mode, flags);
643 return fp16_process_NaN(c, mode, flags);
649 fp32_process_NaNs3(uint32_t a, uint32_t b, uint32_t c, int mode, int *flags)
660 return fp32_process_NaN(a, mode, flags);
662 return fp32_process_NaN(b, mode, flags);
664 return fp32_process_NaN(c, mode, flags);
668 return fp32_process_NaN(a, mode, flags);
670 return fp32_process_NaN(b, mode, flags);
672 return fp32_process_NaN(c, mode, flags);
678 fp64_process_NaNs3(uint64_t a, uint64_t b, uint64_t c, int mode, int *flags)
689 return fp64_process_NaN(a, mode, flags);
691 return fp64_process_NaN(b, mode, flags);
693 return fp64_process_NaN(c, mode, flags);
697 return fp64_process_NaN(a, mode, flags);
699 return fp64_process_NaN(b, mode, flags);
701 return fp64_process_NaN(c, mode, flags);
707 fp16_round_(int sgn, int exp, uint16_t mnt, int rm, int mode, int *flags)
716 if ((mode & FPLIB_FZ16) && exp < 1) {
760 if (!(mode & FPLIB_AHP)) {
785 fp16_round(int sgn, int exp, uint16_t mnt, int mode, int *flags)
787 return fp16_round_(sgn, exp, mnt, mode & 3, mode, flags);
791 fp32_round_(int sgn, int exp, uint32_t mnt, int rm, int mode, int *flags)
800 if ((mode & FPLIB_FZ) && exp < 1) {
862 fp32_round(int sgn, int exp, uint32_t mnt, int mode, int *flags)
864 return fp32_round_(sgn, exp, mnt, mode & 3, mode, flags);
868 fp64_round_(int sgn, int exp, uint64_t mnt, int rm, int mode, int *flags)
877 if ((mode & FPLIB_FZ) && exp < 1) {
939 fp64_round(int sgn, int exp, uint64_t mnt, int mode, int *flags)
941 return fp64_round_(sgn, exp, mnt, mode & 3, mode, flags);
945 fp16_compare_eq(uint16_t a, uint16_t b, int mode, int *flags)
950 fp16_unpack(&a_sgn, &a_exp, &a_mnt, a, mode, flags);
951 fp16_unpack(&b_sgn, &b_exp, &b_mnt, b, mode, flags);
964 fp16_compare_ge(uint16_t a, uint16_t b, int mode, int *flags)
969 fp16_unpack(&a_sgn, &a_exp, &a_mnt, a, mode, flags);
970 fp16_unpack(&b_sgn, &b_exp, &b_mnt, b, mode, flags);
989 fp16_compare_gt(uint16_t a, uint16_t b, int mode, int *flags)
994 fp16_unpack(&a_sgn, &a_exp, &a_mnt, a, mode, flags);
995 fp16_unpack(&b_sgn, &b_exp, &b_mnt, b, mode, flags);
1014 fp16_compare_un(uint16_t a, uint16_t b, int mode, int *flags)
1019 fp16_unpack(&a_sgn, &a_exp, &a_mnt, a, mode, flags);
1020 fp16_unpack(&b_sgn, &b_exp, &b_mnt, b, mode, flags);
1033 fp32_compare_eq(uint32_t a, uint32_t b, int mode, int *flags)
1038 fp32_unpack(&a_sgn, &a_exp, &a_mnt, a, mode, flags);
1039 fp32_unpack(&b_sgn, &b_exp, &b_mnt, b, mode, flags);
1052 fp32_compare_ge(uint32_t a, uint32_t b, int mode, int *flags)
1057 fp32_unpack(&a_sgn, &a_exp, &a_mnt, a, mode, flags);
1058 fp32_unpack(&b_sgn, &b_exp, &b_mnt, b, mode, flags);
1077 fp32_compare_gt(uint32_t a, uint32_t b, int mode, int *flags)
1082 fp32_unpack(&a_sgn, &a_exp, &a_mnt, a, mode, flags);
1083 fp32_unpack(&b_sgn, &b_exp, &b_mnt, b, mode, flags);
1102 fp32_compare_un(uint32_t a, uint32_t b, int mode, int *flags)
1107 fp32_unpack(&a_sgn, &a_exp, &a_mnt, a, mode, flags);
1108 fp32_unpack(&b_sgn, &b_exp, &b_mnt, b, mode, flags);
1121 fp64_compare_eq(uint64_t a, uint64_t b, int mode, int *flags)
1126 fp64_unpack(&a_sgn, &a_exp, &a_mnt, a, mode, flags);
1127 fp64_unpack(&b_sgn, &b_exp, &b_mnt, b, mode, flags);
1140 fp64_compare_ge(uint64_t a, uint64_t b, int mode, int *flags)
1145 fp64_unpack(&a_sgn, &a_exp, &a_mnt, a, mode, flags);
1146 fp64_unpack(&b_sgn, &b_exp, &b_mnt, b, mode, flags);
1165 fp64_compare_gt(uint64_t a, uint64_t b, int mode, int *flags)
1170 fp64_unpack(&a_sgn, &a_exp, &a_mnt, a, mode, flags);
1171 fp64_unpack(&b_sgn, &b_exp, &b_mnt, b, mode, flags);
1190 fp64_compare_un(uint64_t a, uint64_t b, int mode, int *flags)
1195 fp64_unpack(&a_sgn, &a_exp, &a_mnt, a, mode, flags);
1196 fp64_unpack(&b_sgn, &b_exp, &b_mnt, b, mode, flags);
1209 fp16_add(uint16_t a, uint16_t b, int neg, int mode, int *flags)
1214 fp16_unpack(&a_sgn, &a_exp, &a_mnt, a, mode, flags);
1215 fp16_unpack(&b_sgn, &b_exp, &b_mnt, b, mode, flags);
1217 if ((x = fp16_process_NaNs(a, b, mode, flags))) {
1258 // Sign of exact zero result depends on rounding mode
1259 return fp16_zero((mode & 3) == 2);
1265 mode, flags);
1269 fp32_add(uint32_t a, uint32_t b, int neg, int mode, int *flags)
1274 fp32_unpack(&a_sgn, &a_exp, &a_mnt, a, mode, flags);
1275 fp32_unpack(&b_sgn, &b_exp, &b_mnt, b, mode, flags);
1277 if ((x = fp32_process_NaNs(a, b, mode, flags))) {
1318 // Sign of exact zero result depends on rounding mode
1319 return fp32_zero((mode & 3) == 2);
1325 mode, flags);
1329 fp64_add(uint64_t a, uint64_t b, int neg, int mode, int *flags)
1334 fp64_unpack(&a_sgn, &a_exp, &a_mnt, a, mode, flags);
1335 fp64_unpack(&b_sgn, &b_exp, &b_mnt, b, mode, flags);
1337 if ((x = fp64_process_NaNs(a, b, mode, flags))) {
1378 // Sign of exact zero result depends on rounding mode
1379 return fp64_zero((mode & 3) == 2);
1385 mode, flags);
1389 fp16_mul(uint16_t a, uint16_t b, int mode, int *flags)
1395 fp16_unpack(&a_sgn, &a_exp, &a_mnt, a, mode, flags);
1396 fp16_unpack(&b_sgn, &b_exp, &b_mnt, b, mode, flags);
1398 if ((x = fp16_process_NaNs(a, b, mode, flags))) {
1422 return fp16_round(x_sgn, x_exp, x_mnt, mode, flags);
1426 fp32_mul(uint32_t a, uint32_t b, int mode, int *flags)
1432 fp32_unpack(&a_sgn, &a_exp, &a_mnt, a, mode, flags);
1433 fp32_unpack(&b_sgn, &b_exp, &b_mnt, b, mode, flags);
1435 if ((x = fp32_process_NaNs(a, b, mode, flags))) {
1459 return fp32_round(x_sgn, x_exp, x_mnt, mode, flags);
1463 fp64_mul(uint64_t a, uint64_t b, int mode, int *flags)
1469 fp64_unpack(&a_sgn, &a_exp, &a_mnt, a, mode, flags);
1470 fp64_unpack(&b_sgn, &b_exp, &b_mnt, b, mode, flags);
1472 if ((x = fp64_process_NaNs(a, b, mode, flags))) {
1496 return fp64_round(x_sgn, x_exp, x0_mnt, mode, flags);
1501 int mode, int *flags)
1507 fp16_unpack(&a_sgn, &a_exp, &a_mnt, a, mode, flags);
1508 fp16_unpack(&b_sgn, &b_exp, &b_mnt, b, mode, flags);
1509 fp16_unpack(&c_sgn, &c_exp, &c_mnt, c, mode, flags);
1511 x = fp16_process_NaNs3(a, b, c, mode, flags);
1573 // Sign of exact zero result depends on rounding mode
1574 return fp16_zero((mode & 3) == 2);
1581 return fp16_round(x_sgn, x_exp + scale, x_mnt, mode, flags);
1586 int mode, int *flags)
1592 fp32_unpack(&a_sgn, &a_exp, &a_mnt, a, mode, flags);
1593 fp32_unpack(&b_sgn, &b_exp, &b_mnt, b, mode, flags);
1594 fp32_unpack(&c_sgn, &c_exp, &c_mnt, c, mode, flags);
1596 x = fp32_process_NaNs3(a, b, c, mode, flags);
1658 // Sign of exact zero result depends on rounding mode
1659 return fp32_zero((mode & 3) == 2);
1666 return fp32_round(x_sgn, x_exp + scale, x_mnt, mode, flags);
1671 int mode, int *flags)
1677 fp64_unpack(&a_sgn, &a_exp, &a_mnt, a, mode, flags);
1678 fp64_unpack(&b_sgn, &b_exp, &b_mnt, b, mode, flags);
1679 fp64_unpack(&c_sgn, &c_exp, &c_mnt, c, mode, flags);
1681 x = fp64_process_NaNs3(a, b, c, mode, flags);
1750 // Sign of exact zero result depends on rounding mode
1751 return fp64_zero((mode & 3) == 2);
1758 return fp64_round(x_sgn, x_exp + scale, x0_mnt, mode, flags);
1762 fp16_div(uint16_t a, uint16_t b, int mode, int *flags)
1768 fp16_unpack(&a_sgn, &a_exp, &a_mnt, a, mode, flags);
1769 fp16_unpack(&b_sgn, &b_exp, &b_mnt, b, mode, flags);
1771 if ((x = fp16_process_NaNs(a, b, mode, flags)))
1800 return fp16_round(x_sgn, x_exp, x_mnt, mode, flags);
1804 fp32_div(uint32_t a, uint32_t b, int mode, int *flags)
1810 fp32_unpack(&a_sgn, &a_exp, &a_mnt, a, mode, flags);
1811 fp32_unpack(&b_sgn, &b_exp, &b_mnt, b, mode, flags);
1813 if ((x = fp32_process_NaNs(a, b, mode, flags)))
1842 return fp32_round(x_sgn, x_exp, x_mnt, mode, flags);
1846 fp64_div(uint64_t a, uint64_t b, int mode, int *flags)
1851 fp64_unpack(&a_sgn, &a_exp, &a_mnt, a, mode, flags);
1852 fp64_unpack(&b_sgn, &b_exp, &b_mnt, b, mode, flags);
1854 if ((x = fp64_process_NaNs(a, b, mode, flags)))
1897 return fp64_round(x_sgn, x_exp, x_mnt << 1 | !!c, mode, flags);
1924 fp16_scale(uint16_t a, int16_t b, int mode, int *flags)
1929 fp16_unpack(&a_sgn, &a_exp, &a_mnt, a, mode, flags);
1933 return fp16_process_NaN(a, mode, flags);
1954 mode, flags);
1958 fp32_scale(uint32_t a, int32_t b, int mode, int *flags)
1963 fp32_unpack(&a_sgn, &a_exp, &a_mnt, a, mode, flags);
1967 return fp32_process_NaN(a, mode, flags);
1988 mode, flags);
1992 fp64_scale(uint64_t a, int64_t b, int mode, int *flags)
1997 fp64_unpack(&a_sgn, &a_exp, &a_mnt, a, mode, flags);
2001 return fp64_process_NaN(a, mode, flags);
2022 mode, flags);
2026 fp16_sqrt(uint16_t a, int mode, int *flags)
2032 fp16_unpack(&a_sgn, &a_exp, &a_mnt, a, mode, flags);
2036 return fp16_process_NaN(a, mode, flags);
2074 return fp16_round(x_sgn, x_exp, x_mnt << 1 | (t1 != t0), mode, flags);
2078 fp32_sqrt(uint32_t a, int mode, int *flags)
2084 fp32_unpack(&a_sgn, &a_exp, &a_mnt, a, mode, flags);
2088 return fp32_process_NaN(a, mode, flags);
2129 return fp32_round(x_sgn, x_exp, x_mnt << 1 | (t1 != t0), mode, flags);
2133 fp64_sqrt(uint64_t a, int mode, int *flags)
2139 fp64_unpack(&a_sgn, &a_exp, &a_mnt, a, mode, flags);
2143 return fp64_process_NaN(a, mode, flags);
2199 return fp64_round(x_sgn, x_exp, x_mnt << 1 | !!c, mode, flags);
2411 int mode = modeConv(fpscr);
2416 fp16_unpack(&sgn1, &exp1, &mnt1, op1, mode, &flags);
2417 fp16_unpack(&sgn2, &exp2, &mnt2, op2, mode, &flags);
2445 int mode = modeConv(fpscr);
2450 fp32_unpack(&sgn1, &exp1, &mnt1, op1, mode, &flags);
2451 fp32_unpack(&sgn2, &exp2, &mnt2, op2, mode, &flags);
2479 int mode = modeConv(fpscr);
2484 fp64_unpack(&sgn1, &exp1, &mnt1, op1, mode, &flags);
2485 fp64_unpack(&sgn2, &exp2, &mnt2, op2, mode, &flags);
2615 int mode = modeConv(fpscr);
2622 fp32_unpack(&sgn, &exp, &mnt, op, mode, &flags);
2652 rounding, (mode & 0xf) | alt_hp << 4, &flags);
2664 int mode = modeConv(fpscr);
2671 fp64_unpack(&sgn, &exp, &mnt, op, mode, &flags);
2701 rounding, (mode & 0xf) | alt_hp << 4, &flags);
2713 int mode = modeConv(fpscr);
2720 fp16_unpack(&sgn, &exp, &mnt, op, mode & 0xf, &flags);
2751 int mode = modeConv(fpscr);
2758 fp64_unpack(&sgn, &exp, &mnt, op, mode, &flags);
2778 rounding, mode, &flags);
2790 int mode = modeConv(fpscr);
2797 fp16_unpack(&sgn, &exp, &mnt, op, mode & 0xf, &flags);
2828 int mode = modeConv(fpscr);
2835 fp32_unpack(&sgn, &exp, &mnt, op, mode, &flags);
3170 int mode = modeConv(fpscr);
3175 fp16_unpack(&sgn1, &exp1, &mnt1, op1, mode, &flags);
3176 fp16_unpack(&sgn2, &exp2, &mnt2, op2, mode, &flags);
3178 if ((x = fp16_process_NaNs(op1, op2, mode, &flags))) {
3193 int mode = modeConv(fpscr);
3198 fp32_unpack(&sgn1, &exp1, &mnt1, op1, mode, &flags);
3199 fp32_unpack(&sgn2, &exp2, &mnt2, op2, mode, &flags);
3201 if ((x = fp32_process_NaNs(op1, op2, mode, &flags))) {
3216 int mode = modeConv(fpscr);
3221 fp64_unpack(&sgn1, &exp1, &mnt1, op1, mode, &flags);
3222 fp64_unpack(&sgn2, &exp2, &mnt2, op2, mode, &flags);
3224 if ((x = fp64_process_NaNs(op1, op2, mode, &flags))) {
3263 int mode = modeConv(fpscr);
3268 fp16_unpack(&sgn1, &exp1, &mnt1, op1, mode, &flags);
3269 fp16_unpack(&sgn2, &exp2, &mnt2, op2, mode, &flags);
3271 if ((x = fp16_process_NaNs(op1, op2, mode, &flags))) {
3286 int mode = modeConv(fpscr);
3291 fp32_unpack(&sgn1, &exp1, &mnt1, op1, mode, &flags);
3292 fp32_unpack(&sgn2, &exp2, &mnt2, op2, mode, &flags);
3294 if ((x = fp32_process_NaNs(op1, op2, mode, &flags))) {
3309 int mode = modeConv(fpscr);
3314 fp64_unpack(&sgn1, &exp1, &mnt1, op1, mode, &flags);
3315 fp64_unpack(&sgn2, &exp2, &mnt2, op2, mode, &flags);
3317 if ((x = fp64_process_NaNs(op1, op2, mode, &flags))) {
3386 int mode = modeConv(fpscr);
3391 fp16_unpack(&sgn1, &exp1, &mnt1, op1, mode, &flags);
3392 fp16_unpack(&sgn2, &exp2, &mnt2, op2, mode, &flags);
3394 result = fp16_process_NaNs(op1, op2, mode, &flags);
3404 result = fp16_mul(op1, op2, mode, &flags);
3417 int mode = modeConv(fpscr);
3422 fp32_unpack(&sgn1, &exp1, &mnt1, op1, mode, &flags);
3423 fp32_unpack(&sgn2, &exp2, &mnt2, op2, mode, &flags);
3425 result = fp32_process_NaNs(op1, op2, mode, &flags);
3435 result = fp32_mul(op1, op2, mode, &flags);
3448 int mode = modeConv(fpscr);
3453 fp64_unpack(&sgn1, &exp1, &mnt1, op1, mode, &flags);
3454 fp64_unpack(&sgn2, &exp2, &mnt2, op2, mode, &flags);
3456 result = fp64_process_NaNs(op1, op2, mode, &flags);
3466 result = fp64_mul(op1, op2, mode, &flags);
3519 int mode = modeConv(fpscr);
3524 fp16_unpack(&sgn, &exp, &mnt, op, mode, &flags);
3527 result = fp16_process_NaN(op, mode, &flags);
3554 int mode = modeConv(fpscr);
3559 fp32_unpack(&sgn, &exp, &mnt, op, mode, &flags);
3562 result = fp32_process_NaN(op, mode, &flags);
3589 int mode = modeConv(fpscr);
3594 fp64_unpack(&sgn, &exp, &mnt, op, mode, &flags);
3597 result = fp64_process_NaN(op, mode, &flags);
3624 int mode = modeConv(fpscr);
3630 fp16_unpack(&sgn1, &exp1, &mnt1, op1, mode, &flags);
3631 fp16_unpack(&sgn2, &exp2, &mnt2, op2, mode, &flags);
3633 result = fp16_process_NaNs(op1, op2, mode, &flags);
3641 result = fp16_muladd(fp16_FPThree(0), op1, op2, -1, mode, &flags);
3654 int mode = modeConv(fpscr);
3660 fp32_unpack(&sgn1, &exp1, &mnt1, op1, mode, &flags);
3661 fp32_unpack(&sgn2, &exp2, &mnt2, op2, mode, &flags);
3663 result = fp32_process_NaNs(op1, op2, mode, &flags);
3671 result = fp32_muladd(fp32_FPThree(0), op1, op2, -1, mode, &flags);
3684 int mode = modeConv(fpscr);
3690 fp64_unpack(&sgn1, &exp1, &mnt1, op1, mode, &flags);
3691 fp64_unpack(&sgn2, &exp2, &mnt2, op2, mode, &flags);
3693 result = fp64_process_NaNs(op1, op2, mode, &flags);
3701 result = fp64_muladd(fp64_FPThree(0), op1, op2, -1, mode, &flags);
3714 int mode = modeConv(fpscr);
3719 fp16_unpack(&sgn, &exp, &mnt, op, mode, &flags);
3722 result = fp16_process_NaN(op, mode, &flags);
3744 panic("Unrecognized FP rounding mode");
3776 int mode = modeConv(fpscr);
3781 fp32_unpack(&sgn, &exp, &mnt, op, mode, &flags);
3784 result = fp32_process_NaN(op, mode, &flags);
3806 panic("Unrecognized FP rounding mode");
3838 int mode = modeConv(fpscr);
3843 fp64_unpack(&sgn, &exp, &mnt, op, mode, &flags);
3846 result = fp64_process_NaN(op, mode, &flags);
3868 panic("Unrecognized FP rounding mode");
3900 int mode = modeConv(fpscr);
3906 fp16_unpack(&sgn1, &exp1, &mnt1, op1, mode, &flags);
3907 fp16_unpack(&sgn2, &exp2, &mnt2, op2, mode, &flags);
3909 result = fp16_process_NaNs(op1, op2, mode, &flags);
3917 result = fp16_muladd(fp16_FPTwo(0), op1, op2, 0, mode, &flags);
3930 int mode = modeConv(fpscr);
3936 fp32_unpack(&sgn1, &exp1, &mnt1, op1, mode, &flags);
3937 fp32_unpack(&sgn2, &exp2, &mnt2, op2, mode, &flags);
3939 result = fp32_process_NaNs(op1, op2, mode, &flags);
3947 result = fp32_muladd(fp32_FPTwo(0), op1, op2, 0, mode, &flags);
3960 int mode = modeConv(fpscr);
3966 fp64_unpack(&sgn1, &exp1, &mnt1, op1, mode, &flags);
3967 fp64_unpack(&sgn2, &exp2, &mnt2, op2, mode, &flags);
3969 result = fp64_process_NaNs(op1, op2, mode, &flags);
3977 result = fp64_muladd(fp64_FPTwo(0), op1, op2, 0, mode, &flags);
3990 int mode = modeConv(fpscr);
3995 fp16_unpack(&sgn, &exp, &mnt, op, mode, &flags);
3998 result = fp16_process_NaN(op, mode, &flags);
4017 int mode = modeConv(fpscr);
4022 fp32_unpack(&sgn, &exp, &mnt, op, mode, &flags);
4025 result = fp32_process_NaN(op, mode, &flags);
4044 int mode = modeConv(fpscr);
4049 fp64_unpack(&sgn, &exp, &mnt, op, mode, &flags);
4052 result = fp64_process_NaN(op, mode, &flags);
4072 int mode = modeConv(fpscr);
4078 fp16_unpack(&sgn, &exp, &mnt, op, mode, &flags);
4082 result = fp16_process_NaN(op, mode, &flags);
4112 panic("Unrecognized FP rounding mode");
4137 int mode = modeConv(fpscr);
4143 fp32_unpack(&sgn, &exp, &mnt, op, mode, &flags);
4147 result = fp32_process_NaN(op, mode, &flags);
4177 panic("Unrecognized FP rounding mode");
4202 int mode = modeConv(fpscr);
4208 fp64_unpack(&sgn, &exp, &mnt, op, mode, &flags);
4212 result = fp64_process_NaN(op, mode, &flags);
4242 panic("Unrecognized FP rounding mode");
4462 int mode = modeConv(fpscr);
4463 uint16_t result = fp16_mul(op1, op1, mode, &flags);
4466 fp16_unpack(&sgn, &exp, &mnt, result, mode, &flags);
4482 int mode = modeConv(fpscr);
4483 uint32_t result = fp32_mul(op1, op1, mode, &flags);
4486 fp32_unpack(&sgn, &exp, &mnt, result, mode, &flags);
4501 int mode = modeConv(fpscr);
4502 uint64_t result = fp64_mul(op1, op1, mode, &flags);
4505 fp64_unpack(&sgn, &exp, &mnt, result, mode, &flags);
4579 panic("Unrecognized FP rounding mode");
4829 fp16_cvtf(uint64_t a, int fbits, int u, int mode, int *flags)
4845 return fp16_round(x_sgn, x_exp, x_mnt, mode, flags);
4849 fp32_cvtf(uint64_t a, int fbits, int u, int mode, int *flags)
4865 return fp32_round(x_sgn, x_exp, x_mnt, mode, flags);
4869 fp64_cvtf(uint64_t a, int fbits, int u, int mode, int *flags)
4882 return fp64_round(x_sgn, x_exp, x_mnt << 1, mode, flags);