Lines Matching full:env
60 static void handle_exceptions(CPUS390XState *env, bool XxC, uintptr_t retaddr) in handle_exceptions() argument
66 qemu_exc = env->fpu_status.float_exception_flags; in handle_exceptions()
70 env->fpu_status.float_exception_flags = 0; in handle_exceptions()
82 !((env->fpc >> 24) & S390_IEEE_MASK_UNDERFLOW)) { in handle_exceptions()
102 if (s390_exc & ~S390_IEEE_MASK_INEXACT & env->fpc >> 24) { in handle_exceptions()
104 tcg_s390_data_exception(env, s390_exc, retaddr); in handle_exceptions()
107 env->fpc |= (s390_exc & ~S390_IEEE_MASK_INEXACT) << 16; in handle_exceptions()
113 if (s390_exc & S390_IEEE_MASK_INEXACT & env->fpc >> 24) { in handle_exceptions()
114 tcg_s390_data_exception(env, s390_exc & S390_IEEE_MASK_INEXACT, in handle_exceptions()
118 env->fpc |= (s390_exc & S390_IEEE_MASK_INEXACT) << 16; in handle_exceptions()
122 int float_comp_to_cc(CPUS390XState *env, FloatRelation float_compare) in float_comp_to_cc() argument
134 cpu_abort(env_cpu(env), "unknown return value for float compare\n"); in float_comp_to_cc()
218 uint64_t HELPER(aeb)(CPUS390XState *env, uint64_t f1, uint64_t f2) in HELPER()
220 float32 ret = float32_add(f1, f2, &env->fpu_status); in HELPER()
221 handle_exceptions(env, false, GETPC()); in HELPER()
226 uint64_t HELPER(adb)(CPUS390XState *env, uint64_t f1, uint64_t f2) in HELPER()
228 float64 ret = float64_add(f1, f2, &env->fpu_status); in HELPER()
229 handle_exceptions(env, false, GETPC()); in HELPER()
234 Int128 HELPER(axb)(CPUS390XState *env, Int128 a, Int128 b) in HELPER()
236 float128 ret = float128_add(ARG128(a), ARG128(b), &env->fpu_status); in HELPER()
237 handle_exceptions(env, false, GETPC()); in HELPER()
242 uint64_t HELPER(seb)(CPUS390XState *env, uint64_t f1, uint64_t f2) in HELPER()
244 float32 ret = float32_sub(f1, f2, &env->fpu_status); in HELPER()
245 handle_exceptions(env, false, GETPC()); in HELPER()
250 uint64_t HELPER(sdb)(CPUS390XState *env, uint64_t f1, uint64_t f2) in HELPER()
252 float64 ret = float64_sub(f1, f2, &env->fpu_status); in HELPER()
253 handle_exceptions(env, false, GETPC()); in HELPER()
258 Int128 HELPER(sxb)(CPUS390XState *env, Int128 a, Int128 b) in HELPER()
260 float128 ret = float128_sub(ARG128(a), ARG128(b), &env->fpu_status); in HELPER()
261 handle_exceptions(env, false, GETPC()); in HELPER()
266 uint64_t HELPER(deb)(CPUS390XState *env, uint64_t f1, uint64_t f2) in HELPER()
268 float32 ret = float32_div(f1, f2, &env->fpu_status); in HELPER()
269 handle_exceptions(env, false, GETPC()); in HELPER()
274 uint64_t HELPER(ddb)(CPUS390XState *env, uint64_t f1, uint64_t f2) in HELPER()
276 float64 ret = float64_div(f1, f2, &env->fpu_status); in HELPER()
277 handle_exceptions(env, false, GETPC()); in HELPER()
282 Int128 HELPER(dxb)(CPUS390XState *env, Int128 a, Int128 b) in HELPER()
284 float128 ret = float128_div(ARG128(a), ARG128(b), &env->fpu_status); in HELPER()
285 handle_exceptions(env, false, GETPC()); in HELPER()
290 uint64_t HELPER(meeb)(CPUS390XState *env, uint64_t f1, uint64_t f2) in HELPER()
292 float32 ret = float32_mul(f1, f2, &env->fpu_status); in HELPER()
293 handle_exceptions(env, false, GETPC()); in HELPER()
298 uint64_t HELPER(mdb)(CPUS390XState *env, uint64_t f1, uint64_t f2) in HELPER()
300 float64 ret = float64_mul(f1, f2, &env->fpu_status); in HELPER()
301 handle_exceptions(env, false, GETPC()); in HELPER()
306 uint64_t HELPER(mdeb)(CPUS390XState *env, uint64_t f1, uint64_t f2) in HELPER()
308 float64 f1_64 = float32_to_float64(f1, &env->fpu_status); in HELPER()
309 float64 ret = float32_to_float64(f2, &env->fpu_status); in HELPER()
310 ret = float64_mul(f1_64, ret, &env->fpu_status); in HELPER()
311 handle_exceptions(env, false, GETPC()); in HELPER()
316 Int128 HELPER(mxb)(CPUS390XState *env, Int128 a, Int128 b) in HELPER()
318 float128 ret = float128_mul(ARG128(a), ARG128(b), &env->fpu_status); in HELPER()
319 handle_exceptions(env, false, GETPC()); in HELPER()
324 Int128 HELPER(mxdb)(CPUS390XState *env, uint64_t f1, uint64_t f2) in HELPER()
326 float128 f1_128 = float64_to_float128(f1, &env->fpu_status); in HELPER()
327 float128 ret = float64_to_float128(f2, &env->fpu_status); in HELPER()
328 ret = float128_mul(f1_128, ret, &env->fpu_status); in HELPER()
329 handle_exceptions(env, false, GETPC()); in HELPER()
334 uint64_t HELPER(ldeb)(CPUS390XState *env, uint64_t f2) in HELPER()
336 float64 ret = float32_to_float64(f2, &env->fpu_status); in HELPER()
337 handle_exceptions(env, false, GETPC()); in HELPER()
342 uint64_t HELPER(ldxb)(CPUS390XState *env, Int128 a, uint32_t m34) in HELPER()
344 int old_mode = s390_swap_bfp_rounding_mode(env, round_from_m34(m34)); in HELPER()
345 float64 ret = float128_to_float64(ARG128(a), &env->fpu_status); in HELPER()
347 s390_restore_bfp_rounding_mode(env, old_mode); in HELPER()
348 handle_exceptions(env, xxc_from_m34(m34), GETPC()); in HELPER()
353 Int128 HELPER(lxdb)(CPUS390XState *env, uint64_t f2) in HELPER()
355 float128 ret = float64_to_float128(f2, &env->fpu_status); in HELPER()
356 handle_exceptions(env, false, GETPC()); in HELPER()
361 Int128 HELPER(lxeb)(CPUS390XState *env, uint64_t f2) in HELPER()
363 float128 ret = float32_to_float128(f2, &env->fpu_status); in HELPER()
364 handle_exceptions(env, false, GETPC()); in HELPER()
369 uint64_t HELPER(ledb)(CPUS390XState *env, uint64_t f2, uint32_t m34) in HELPER()
371 int old_mode = s390_swap_bfp_rounding_mode(env, round_from_m34(m34)); in HELPER()
372 float32 ret = float64_to_float32(f2, &env->fpu_status); in HELPER()
374 s390_restore_bfp_rounding_mode(env, old_mode); in HELPER()
375 handle_exceptions(env, xxc_from_m34(m34), GETPC()); in HELPER()
380 uint64_t HELPER(lexb)(CPUS390XState *env, Int128 a, uint32_t m34) in HELPER()
382 int old_mode = s390_swap_bfp_rounding_mode(env, round_from_m34(m34)); in HELPER()
383 float32 ret = float128_to_float32(ARG128(a), &env->fpu_status); in HELPER()
385 s390_restore_bfp_rounding_mode(env, old_mode); in HELPER()
386 handle_exceptions(env, xxc_from_m34(m34), GETPC()); in HELPER()
391 uint32_t HELPER(ceb)(CPUS390XState *env, uint64_t f1, uint64_t f2) in HELPER()
393 FloatRelation cmp = float32_compare_quiet(f1, f2, &env->fpu_status); in HELPER()
394 handle_exceptions(env, false, GETPC()); in HELPER()
395 return float_comp_to_cc(env, cmp); in HELPER()
399 uint32_t HELPER(cdb)(CPUS390XState *env, uint64_t f1, uint64_t f2) in HELPER()
401 FloatRelation cmp = float64_compare_quiet(f1, f2, &env->fpu_status); in HELPER()
402 handle_exceptions(env, false, GETPC()); in HELPER()
403 return float_comp_to_cc(env, cmp); in HELPER()
407 uint32_t HELPER(cxb)(CPUS390XState *env, Int128 a, Int128 b) in HELPER()
410 &env->fpu_status); in HELPER()
411 handle_exceptions(env, false, GETPC()); in HELPER()
412 return float_comp_to_cc(env, cmp); in HELPER()
415 int s390_swap_bfp_rounding_mode(CPUS390XState *env, int m3) in s390_swap_bfp_rounding_mode() argument
417 int ret = env->fpu_status.float_rounding_mode; in s390_swap_bfp_rounding_mode()
425 set_float_rounding_mode(float_round_ties_away, &env->fpu_status); in s390_swap_bfp_rounding_mode()
429 set_float_rounding_mode(float_round_to_odd, &env->fpu_status); in s390_swap_bfp_rounding_mode()
433 set_float_rounding_mode(float_round_nearest_even, &env->fpu_status); in s390_swap_bfp_rounding_mode()
437 set_float_rounding_mode(float_round_to_zero, &env->fpu_status); in s390_swap_bfp_rounding_mode()
441 set_float_rounding_mode(float_round_up, &env->fpu_status); in s390_swap_bfp_rounding_mode()
445 set_float_rounding_mode(float_round_down, &env->fpu_status); in s390_swap_bfp_rounding_mode()
453 void s390_restore_bfp_rounding_mode(CPUS390XState *env, int old_mode) in s390_restore_bfp_rounding_mode() argument
455 set_float_rounding_mode(old_mode, &env->fpu_status); in s390_restore_bfp_rounding_mode()
459 uint64_t HELPER(cegb)(CPUS390XState *env, int64_t v2, uint32_t m34) in HELPER()
461 int old_mode = s390_swap_bfp_rounding_mode(env, round_from_m34(m34)); in HELPER()
462 float32 ret = int64_to_float32(v2, &env->fpu_status); in HELPER()
464 s390_restore_bfp_rounding_mode(env, old_mode); in HELPER()
465 handle_exceptions(env, xxc_from_m34(m34), GETPC()); in HELPER()
470 uint64_t HELPER(cdgb)(CPUS390XState *env, int64_t v2, uint32_t m34) in HELPER()
472 int old_mode = s390_swap_bfp_rounding_mode(env, round_from_m34(m34)); in HELPER()
473 float64 ret = int64_to_float64(v2, &env->fpu_status); in HELPER()
475 s390_restore_bfp_rounding_mode(env, old_mode); in HELPER()
476 handle_exceptions(env, xxc_from_m34(m34), GETPC()); in HELPER()
481 Int128 HELPER(cxgb)(CPUS390XState *env, int64_t v2, uint32_t m34) in HELPER()
483 int old_mode = s390_swap_bfp_rounding_mode(env, round_from_m34(m34)); in HELPER()
484 float128 ret = int64_to_float128(v2, &env->fpu_status); in HELPER()
486 s390_restore_bfp_rounding_mode(env, old_mode); in HELPER()
487 handle_exceptions(env, xxc_from_m34(m34), GETPC()); in HELPER()
492 uint64_t HELPER(celgb)(CPUS390XState *env, uint64_t v2, uint32_t m34) in HELPER()
494 int old_mode = s390_swap_bfp_rounding_mode(env, round_from_m34(m34)); in HELPER()
495 float32 ret = uint64_to_float32(v2, &env->fpu_status); in HELPER()
497 s390_restore_bfp_rounding_mode(env, old_mode); in HELPER()
498 handle_exceptions(env, xxc_from_m34(m34), GETPC()); in HELPER()
503 uint64_t HELPER(cdlgb)(CPUS390XState *env, uint64_t v2, uint32_t m34) in HELPER()
505 int old_mode = s390_swap_bfp_rounding_mode(env, round_from_m34(m34)); in HELPER()
506 float64 ret = uint64_to_float64(v2, &env->fpu_status); in HELPER()
508 s390_restore_bfp_rounding_mode(env, old_mode); in HELPER()
509 handle_exceptions(env, xxc_from_m34(m34), GETPC()); in HELPER()
514 Int128 HELPER(cxlgb)(CPUS390XState *env, uint64_t v2, uint32_t m34) in HELPER()
516 int old_mode = s390_swap_bfp_rounding_mode(env, round_from_m34(m34)); in HELPER()
517 float128 ret = uint64_to_float128(v2, &env->fpu_status); in HELPER()
519 s390_restore_bfp_rounding_mode(env, old_mode); in HELPER()
520 handle_exceptions(env, xxc_from_m34(m34), GETPC()); in HELPER()
525 uint64_t HELPER(cgeb)(CPUS390XState *env, uint64_t v2, uint32_t m34) in HELPER()
527 int old_mode = s390_swap_bfp_rounding_mode(env, round_from_m34(m34)); in HELPER()
528 int64_t ret = float32_to_int64(v2, &env->fpu_status); in HELPER()
529 uint32_t cc = set_cc_conv_f32(v2, &env->fpu_status); in HELPER()
531 s390_restore_bfp_rounding_mode(env, old_mode); in HELPER()
532 handle_exceptions(env, xxc_from_m34(m34), GETPC()); in HELPER()
533 env->cc_op = cc; in HELPER()
541 uint64_t HELPER(cgdb)(CPUS390XState *env, uint64_t v2, uint32_t m34) in HELPER()
543 int old_mode = s390_swap_bfp_rounding_mode(env, round_from_m34(m34)); in HELPER()
544 int64_t ret = float64_to_int64(v2, &env->fpu_status); in HELPER()
545 uint32_t cc = set_cc_conv_f64(v2, &env->fpu_status); in HELPER()
547 s390_restore_bfp_rounding_mode(env, old_mode); in HELPER()
548 handle_exceptions(env, xxc_from_m34(m34), GETPC()); in HELPER()
549 env->cc_op = cc; in HELPER()
557 uint64_t HELPER(cgxb)(CPUS390XState *env, Int128 i2, uint32_t m34) in HELPER()
559 int old_mode = s390_swap_bfp_rounding_mode(env, round_from_m34(m34)); in HELPER()
561 int64_t ret = float128_to_int64(v2, &env->fpu_status); in HELPER()
562 uint32_t cc = set_cc_conv_f128(v2, &env->fpu_status); in HELPER()
564 s390_restore_bfp_rounding_mode(env, old_mode); in HELPER()
565 handle_exceptions(env, xxc_from_m34(m34), GETPC()); in HELPER()
566 env->cc_op = cc; in HELPER()
574 uint64_t HELPER(cfeb)(CPUS390XState *env, uint64_t v2, uint32_t m34) in HELPER()
576 int old_mode = s390_swap_bfp_rounding_mode(env, round_from_m34(m34)); in HELPER()
577 int32_t ret = float32_to_int32(v2, &env->fpu_status); in HELPER()
578 uint32_t cc = set_cc_conv_f32(v2, &env->fpu_status); in HELPER()
580 s390_restore_bfp_rounding_mode(env, old_mode); in HELPER()
581 handle_exceptions(env, xxc_from_m34(m34), GETPC()); in HELPER()
582 env->cc_op = cc; in HELPER()
590 uint64_t HELPER(cfdb)(CPUS390XState *env, uint64_t v2, uint32_t m34) in HELPER()
592 int old_mode = s390_swap_bfp_rounding_mode(env, round_from_m34(m34)); in HELPER()
593 int32_t ret = float64_to_int32(v2, &env->fpu_status); in HELPER()
594 uint32_t cc = set_cc_conv_f64(v2, &env->fpu_status); in HELPER()
596 s390_restore_bfp_rounding_mode(env, old_mode); in HELPER()
597 handle_exceptions(env, xxc_from_m34(m34), GETPC()); in HELPER()
598 env->cc_op = cc; in HELPER()
606 uint64_t HELPER(cfxb)(CPUS390XState *env, Int128 i2, uint32_t m34) in HELPER()
608 int old_mode = s390_swap_bfp_rounding_mode(env, round_from_m34(m34)); in HELPER()
610 int32_t ret = float128_to_int32(v2, &env->fpu_status); in HELPER()
611 uint32_t cc = set_cc_conv_f128(v2, &env->fpu_status); in HELPER()
613 s390_restore_bfp_rounding_mode(env, old_mode); in HELPER()
614 handle_exceptions(env, xxc_from_m34(m34), GETPC()); in HELPER()
615 env->cc_op = cc; in HELPER()
623 uint64_t HELPER(clgeb)(CPUS390XState *env, uint64_t v2, uint32_t m34) in HELPER()
625 int old_mode = s390_swap_bfp_rounding_mode(env, round_from_m34(m34)); in HELPER()
626 uint64_t ret = float32_to_uint64(v2, &env->fpu_status); in HELPER()
627 uint32_t cc = set_cc_conv_f32(v2, &env->fpu_status); in HELPER()
629 s390_restore_bfp_rounding_mode(env, old_mode); in HELPER()
630 handle_exceptions(env, xxc_from_m34(m34), GETPC()); in HELPER()
631 env->cc_op = cc; in HELPER()
639 uint64_t HELPER(clgdb)(CPUS390XState *env, uint64_t v2, uint32_t m34) in HELPER()
641 int old_mode = s390_swap_bfp_rounding_mode(env, round_from_m34(m34)); in HELPER()
642 uint64_t ret = float64_to_uint64(v2, &env->fpu_status); in HELPER()
643 uint32_t cc = set_cc_conv_f64(v2, &env->fpu_status); in HELPER()
645 s390_restore_bfp_rounding_mode(env, old_mode); in HELPER()
646 handle_exceptions(env, xxc_from_m34(m34), GETPC()); in HELPER()
647 env->cc_op = cc; in HELPER()
655 uint64_t HELPER(clgxb)(CPUS390XState *env, Int128 i2, uint32_t m34) in HELPER()
657 int old_mode = s390_swap_bfp_rounding_mode(env, round_from_m34(m34)); in HELPER()
659 uint64_t ret = float128_to_uint64(v2, &env->fpu_status); in HELPER()
660 uint32_t cc = set_cc_conv_f128(v2, &env->fpu_status); in HELPER()
662 s390_restore_bfp_rounding_mode(env, old_mode); in HELPER()
663 handle_exceptions(env, xxc_from_m34(m34), GETPC()); in HELPER()
664 env->cc_op = cc; in HELPER()
672 uint64_t HELPER(clfeb)(CPUS390XState *env, uint64_t v2, uint32_t m34) in HELPER()
674 int old_mode = s390_swap_bfp_rounding_mode(env, round_from_m34(m34)); in HELPER()
675 uint32_t ret = float32_to_uint32(v2, &env->fpu_status); in HELPER()
676 uint32_t cc = set_cc_conv_f32(v2, &env->fpu_status); in HELPER()
678 s390_restore_bfp_rounding_mode(env, old_mode); in HELPER()
679 handle_exceptions(env, xxc_from_m34(m34), GETPC()); in HELPER()
680 env->cc_op = cc; in HELPER()
688 uint64_t HELPER(clfdb)(CPUS390XState *env, uint64_t v2, uint32_t m34) in HELPER()
690 int old_mode = s390_swap_bfp_rounding_mode(env, round_from_m34(m34)); in HELPER()
691 uint32_t ret = float64_to_uint32(v2, &env->fpu_status); in HELPER()
692 uint32_t cc = set_cc_conv_f64(v2, &env->fpu_status); in HELPER()
694 s390_restore_bfp_rounding_mode(env, old_mode); in HELPER()
695 handle_exceptions(env, xxc_from_m34(m34), GETPC()); in HELPER()
696 env->cc_op = cc; in HELPER()
704 uint64_t HELPER(clfxb)(CPUS390XState *env, Int128 i2, uint32_t m34) in HELPER()
706 int old_mode = s390_swap_bfp_rounding_mode(env, round_from_m34(m34)); in HELPER()
708 uint32_t ret = float128_to_uint32(v2, &env->fpu_status); in HELPER()
709 uint32_t cc = set_cc_conv_f128(v2, &env->fpu_status); in HELPER()
711 s390_restore_bfp_rounding_mode(env, old_mode); in HELPER()
712 handle_exceptions(env, xxc_from_m34(m34), GETPC()); in HELPER()
713 env->cc_op = cc; in HELPER()
721 uint64_t HELPER(fieb)(CPUS390XState *env, uint64_t f2, uint32_t m34) in HELPER()
723 int old_mode = s390_swap_bfp_rounding_mode(env, round_from_m34(m34)); in HELPER()
724 float32 ret = float32_round_to_int(f2, &env->fpu_status); in HELPER()
726 s390_restore_bfp_rounding_mode(env, old_mode); in HELPER()
727 handle_exceptions(env, xxc_from_m34(m34), GETPC()); in HELPER()
732 uint64_t HELPER(fidb)(CPUS390XState *env, uint64_t f2, uint32_t m34) in HELPER()
734 int old_mode = s390_swap_bfp_rounding_mode(env, round_from_m34(m34)); in HELPER()
735 float64 ret = float64_round_to_int(f2, &env->fpu_status); in HELPER()
737 s390_restore_bfp_rounding_mode(env, old_mode); in HELPER()
738 handle_exceptions(env, xxc_from_m34(m34), GETPC()); in HELPER()
743 Int128 HELPER(fixb)(CPUS390XState *env, Int128 a, uint32_t m34) in HELPER()
745 int old_mode = s390_swap_bfp_rounding_mode(env, round_from_m34(m34)); in HELPER()
746 float128 ret = float128_round_to_int(ARG128(a), &env->fpu_status); in HELPER()
748 s390_restore_bfp_rounding_mode(env, old_mode); in HELPER()
749 handle_exceptions(env, xxc_from_m34(m34), GETPC()); in HELPER()
754 uint32_t HELPER(keb)(CPUS390XState *env, uint64_t f1, uint64_t f2) in HELPER()
756 FloatRelation cmp = float32_compare(f1, f2, &env->fpu_status); in HELPER()
757 handle_exceptions(env, false, GETPC()); in HELPER()
758 return float_comp_to_cc(env, cmp); in HELPER()
762 uint32_t HELPER(kdb)(CPUS390XState *env, uint64_t f1, uint64_t f2) in HELPER()
764 FloatRelation cmp = float64_compare(f1, f2, &env->fpu_status); in HELPER()
765 handle_exceptions(env, false, GETPC()); in HELPER()
766 return float_comp_to_cc(env, cmp); in HELPER()
770 uint32_t HELPER(kxb)(CPUS390XState *env, Int128 a, Int128 b) in HELPER()
773 &env->fpu_status); in HELPER()
774 handle_exceptions(env, false, GETPC()); in HELPER()
775 return float_comp_to_cc(env, cmp); in HELPER()
779 uint64_t HELPER(maeb)(CPUS390XState *env, uint64_t f1, in HELPER()
782 float32 ret = float32_muladd(f3, f2, f1, 0, &env->fpu_status); in HELPER()
783 handle_exceptions(env, false, GETPC()); in HELPER()
788 uint64_t HELPER(madb)(CPUS390XState *env, uint64_t f1, in HELPER()
791 float64 ret = float64_muladd(f3, f2, f1, 0, &env->fpu_status); in HELPER()
792 handle_exceptions(env, false, GETPC()); in HELPER()
797 uint64_t HELPER(mseb)(CPUS390XState *env, uint64_t f1, in HELPER()
801 &env->fpu_status); in HELPER()
802 handle_exceptions(env, false, GETPC()); in HELPER()
807 uint64_t HELPER(msdb)(CPUS390XState *env, uint64_t f1, in HELPER()
811 &env->fpu_status); in HELPER()
812 handle_exceptions(env, false, GETPC()); in HELPER()
823 uint16_t _TYPE##_dcmask(CPUS390XState *env, _TYPE f1) \
836 } else if (_TYPE##_is_quiet_nan(f1, &env->fpu_status)) { \
847 uint32_t HELPER(tceb)(CPUS390XState *env, uint64_t f1, uint64_t m2) in DEF_FLOAT_DCMASK()
849 return (m2 & float32_dcmask(env, f1)) != 0; in DEF_FLOAT_DCMASK()
853 uint32_t HELPER(tcdb)(CPUS390XState *env, uint64_t v1, uint64_t m2) in HELPER()
855 return (m2 & float64_dcmask(env, v1)) != 0; in HELPER()
859 uint32_t HELPER(tcxb)(CPUS390XState *env, Int128 a, uint64_t m2) in HELPER()
861 return (m2 & float128_dcmask(env, ARG128(a))) != 0; in HELPER()
865 uint64_t HELPER(sqeb)(CPUS390XState *env, uint64_t f2) in HELPER()
867 float32 ret = float32_sqrt(f2, &env->fpu_status); in HELPER()
868 handle_exceptions(env, false, GETPC()); in HELPER()
873 uint64_t HELPER(sqdb)(CPUS390XState *env, uint64_t f2) in HELPER()
875 float64 ret = float64_sqrt(f2, &env->fpu_status); in HELPER()
876 handle_exceptions(env, false, GETPC()); in HELPER()
881 Int128 HELPER(sqxb)(CPUS390XState *env, Int128 a) in HELPER()
883 float128 ret = float128_sqrt(ARG128(a), &env->fpu_status); in HELPER()
884 handle_exceptions(env, false, GETPC()); in HELPER()
900 void HELPER(sfpc)(CPUS390XState *env, uint64_t fpc) in HELPER()
904 tcg_s390_program_interrupt(env, PGM_SPECIFICATION, GETPC()); in HELPER()
908 env->fpc = fpc; in HELPER()
911 set_float_rounding_mode(fpc_to_rnd[fpc & 0x7], &env->fpu_status); in HELPER()
915 void HELPER(sfas)(CPUS390XState *env, uint64_t fpc) in HELPER()
917 uint32_t signalling = env->fpc; in HELPER()
922 tcg_s390_program_interrupt(env, PGM_SPECIFICATION, GETPC()); in HELPER()
929 env->fpc = fpc | (signalling & 0x00ff0000); in HELPER()
930 set_float_rounding_mode(fpc_to_rnd[fpc & 0x7], &env->fpu_status); in HELPER()
951 tcg_s390_data_exception(env, s390_exc | 3, GETPC()); in HELPER()
956 void HELPER(srnm)(CPUS390XState *env, uint64_t rnd) in HELPER()
959 tcg_s390_program_interrupt(env, PGM_SPECIFICATION, GETPC()); in HELPER()
962 env->fpc = deposit32(env->fpc, 0, 3, rnd); in HELPER()
963 set_float_rounding_mode(fpc_to_rnd[rnd & 0x7], &env->fpu_status); in HELPER()