Lines Matching refs:xb

1572                    ppc_vsr_t *xa, ppc_vsr_t *xb)                             \
1582 t.fld = tp##_##op(xa->fld, xb->fld, &tstat); \
1612 ppc_vsr_t *xt, ppc_vsr_t *xa, ppc_vsr_t *xb) in helper_xsaddqp() argument
1625 t.f128 = float128_add(xa->f128, xb->f128, &tstat); in helper_xsaddqp()
1648 ppc_vsr_t *xa, ppc_vsr_t *xb) \
1658 t.fld = tp##_mul(xa->fld, xb->fld, &tstat); \
1685 ppc_vsr_t *xt, ppc_vsr_t *xa, ppc_vsr_t *xb) in helper_xsmulqp() argument
1697 t.f128 = float128_mul(xa->f128, xb->f128, &tstat); in helper_xsmulqp()
1719 ppc_vsr_t *xa, ppc_vsr_t *xb) \
1729 t.fld = tp##_div(xa->fld, xb->fld, &tstat); \
1759 ppc_vsr_t *xt, ppc_vsr_t *xa, ppc_vsr_t *xb) in helper_xsdivqp() argument
1771 t.f128 = float128_div(xa->f128, xb->f128, &tstat); in helper_xsdivqp()
1795 void helper_##op(CPUPPCState *env, ppc_vsr_t *xt, ppc_vsr_t *xb) \
1803 if (unlikely(tp##_is_signaling_nan(xb->fld, &env->fp_status))) { \
1806 t.fld = tp##_div(tp##_one, xb->fld, &env->fp_status); \
1835 void helper_##op(CPUPPCState *env, ppc_vsr_t *xt, ppc_vsr_t *xb) \
1845 t.fld = tp##_sqrt(xb->fld, &tstat); \
1880 void helper_##op(CPUPPCState *env, ppc_vsr_t *xt, ppc_vsr_t *xb) \
1890 t.fld = tp##_sqrt(xb->fld, &tstat); \
1927 ppc_vsr_t *xa, ppc_vsr_t *xb) \
1935 tp##_is_infinity(xb->fld) || \
1936 tp##_is_zero(xb->fld))) { \
1941 int e_b = ppc_##tp##_get_unbiased_exp(xb->fld); \
1944 tp##_is_any_nan(xb->fld))) { \
1955 if (unlikely(tp##_is_zero_or_denormal(xb->fld))) { \
1983 void helper_##op(CPUPPCState *env, uint32_t opcode, ppc_vsr_t *xb) \
1990 if (unlikely(tp##_is_infinity(xb->fld) || \
1991 tp##_is_zero(xb->fld))) { \
1995 int e_b = ppc_##tp##_get_unbiased_exp(xb->fld); \
1997 if (unlikely(tp##_is_any_nan(xb->fld))) { \
1999 } else if (unlikely(tp##_is_zero(xb->fld))) { \
2001 } else if (unlikely(tp##_is_neg(xb->fld))) { \
2003 } else if (!tp##_is_zero(xb->fld) && \
2008 if (unlikely(tp##_is_zero_or_denormal(xb->fld))) { \
2134 ppc_vsr_t *xa, ppc_vsr_t *xb) \
2142 r = tp##_##cmp(xb->fld, xa->fld, &env->fp_status); \
2144 r = tp##_##cmp##_quiet(xb->fld, xa->fld, &env->fp_status); \
2172 ppc_vsr_t *xa, ppc_vsr_t *xb) in helper_xscmpexpdp() argument
2178 exp_b = extract64(xb->VsrD(0), 52, 11); in helper_xscmpexpdp()
2181 float64_is_any_nan(xb->VsrD(0)))) { in helper_xscmpexpdp()
2201 ppc_vsr_t *xa, ppc_vsr_t *xb) in helper_xscmpexpqp() argument
2207 exp_b = extract64(xb->VsrD(0), 48, 15); in helper_xscmpexpqp()
2210 float128_is_any_nan(xb->f128))) { in helper_xscmpexpqp()
2229 static inline void do_scalar_cmp(CPUPPCState *env, ppc_vsr_t *xa, ppc_vsr_t *xb, in do_scalar_cmp() argument
2237 switch (float64_compare(xa->VsrD(0), xb->VsrD(0), &env->fp_status)) { in do_scalar_cmp()
2251 float64_is_signaling_nan(xb->VsrD(0), &env->fp_status)) { in do_scalar_cmp()
2257 float64_is_quiet_nan(xb->VsrD(0), &env->fp_status)) { in do_scalar_cmp()
2283 ppc_vsr_t *xb) in helper_xscmpodp() argument
2285 do_scalar_cmp(env, xa, xb, BF(opcode), true); in helper_xscmpodp()
2289 ppc_vsr_t *xb) in helper_xscmpudp() argument
2291 do_scalar_cmp(env, xa, xb, BF(opcode), false); in helper_xscmpudp()
2295 ppc_vsr_t *xb, int crf_idx, bool ordered) in do_scalar_cmpq() argument
2302 switch (float128_compare(xa->f128, xb->f128, &env->fp_status)) { in do_scalar_cmpq()
2316 float128_is_signaling_nan(xb->f128, &env->fp_status)) { in do_scalar_cmpq()
2322 float128_is_quiet_nan(xb->f128, &env->fp_status)) { in do_scalar_cmpq()
2348 ppc_vsr_t *xb) in helper_xscmpoqp() argument
2350 do_scalar_cmpq(env, xa, xb, BF(opcode), true); in helper_xscmpoqp()
2354 ppc_vsr_t *xb) in helper_xscmpuqp() argument
2356 do_scalar_cmpq(env, xa, xb, BF(opcode), false); in helper_xscmpuqp()
2369 ppc_vsr_t *xa, ppc_vsr_t *xb) \
2375 t.fld = tp##_##op(xa->fld, xb->fld, &env->fp_status); \
2377 tp##_is_signaling_nan(xb->fld, &env->fp_status))) { \
2395 ppc_vsr_t *xt, ppc_vsr_t *xa, ppc_vsr_t *xb) \
2403 first = tp##_le_quiet(xb->fld, xa->fld, &env->fp_status); \
2405 first = tp##_lt_quiet(xa->fld, xb->fld, &env->fp_status); \
2411 t.fld = xb->fld; \
2427 ppc_vsr_t *xt, ppc_vsr_t *xa, ppc_vsr_t *xb) \
2437 } else if (unlikely(float64_is_any_nan(xb->VsrD(0)))) { \
2438 if (float64_is_signaling_nan(xb->VsrD(0), &env->fp_status)) { \
2441 t.VsrD(0) = xb->VsrD(0); \
2443 float64_is_zero(xb->VsrD(0))) { \
2446 !float64_is_neg(xb->VsrD(0))) { \
2453 float64_is_neg(xb->VsrD(0))) { \
2460 !float64_lt(xa->VsrD(0), xb->VsrD(0), &env->fp_status)) || \
2462 float64_lt(xa->VsrD(0), xb->VsrD(0), &env->fp_status))) { \
2465 t.VsrD(0) = xb->VsrD(0); \
2492 ppc_vsr_t *xa, ppc_vsr_t *xb) \
2504 tp##_is_any_nan(xb->fld))) { \
2506 tp##_is_signaling_nan(xb->fld, &env->fp_status)) { \
2515 if (tp##_##cmp(xb->fld, xa->fld, &env->fp_status) == exp) { \
2550 void helper_##op(CPUPPCState *env, ppc_vsr_t *xt, ppc_vsr_t *xb) \
2558 t.tfld = stp##_to_##ttp(xb->sfld, &env->fp_status); \
2559 if (unlikely(stp##_is_signaling_nan(xb->sfld, \
2577 void helper_##op(CPUPPCState *env, ppc_vsr_t *xt, ppc_vsr_t *xb) \
2585 t.VsrW(2 * i) = stp##_to_##ttp(xb->VsrD(i), &env->fp_status); \
2586 if (unlikely(stp##_is_signaling_nan(xb->VsrD(i), \
2616 ppc_vsr_t *xt, ppc_vsr_t *xb) \
2624 t.tfld = stp##_to_##ttp(xb->sfld, &env->fp_status); \
2625 if (unlikely(stp##_is_signaling_nan(xb->sfld, \
2653 void helper_##op(CPUPPCState *env, ppc_vsr_t *xt, ppc_vsr_t *xb) \
2661 t.tfld = stp##_to_##ttp(xb->sfld, 1, &env->fp_status); \
2662 if (unlikely(stp##_is_signaling_nan(xb->sfld, \
2681 void helper_XVCVSPBF16(CPUPPCState *env, ppc_vsr_t *xt, ppc_vsr_t *xb) in helper_XVCVSPBF16() argument
2689 t.VsrH(2 * i + 1) = float32_to_bfloat16(xb->VsrW(i), &env->fp_status); in helper_XVCVSPBF16()
2702 ppc_vsr_t *xb) in helper_XSCVQPDP() argument
2714 t.VsrD(0) = float128_to_float64(xb->f128, &tstat); in helper_XSCVQPDP()
2716 if (unlikely(float128_is_signaling_nan(xb->f128, &tstat))) { in helper_XSCVQPDP()
2726 uint64_t helper_xscvdpspn(CPUPPCState *env, uint64_t xb) in helper_xscvdpspn() argument
2734 sign = extract64(xb, 63, 1); in helper_xscvdpspn()
2735 exp = extract64(xb, 52, 11); in helper_xscvdpspn()
2736 frac = extract64(xb, 0, 52) | 0x10000000000000ULL; in helper_xscvdpspn()
2767 uint64_t helper_XSCVSPDPN(uint64_t xb) in helper_XSCVSPDPN() argument
2769 return helper_todouble(xb >> 32); in helper_XSCVSPDPN()
2784 void helper_##op(CPUPPCState *env, ppc_vsr_t *xt, ppc_vsr_t *xb) \
2792 t.tfld = stp##_to_##ttp##_round_to_zero(xb->sfld, &env->fp_status); \
2821 void helper_##op(CPUPPCState *env, ppc_vsr_t *xt, ppc_vsr_t *xb) \
2827 t.s128 = float128_to_##tp##_round_to_zero(xb->f128, &env->fp_status); \
2851 void helper_##op(CPUPPCState *env, ppc_vsr_t *xt, ppc_vsr_t *xb) \
2859 t.VsrW(2 * i) = stp##_to_##ttp##_round_to_zero(xb->VsrD(i), \
2891 ppc_vsr_t *xt, ppc_vsr_t *xb) \
2898 t.tfld = stp##_to_##ttp##_round_to_zero(xb->sfld, &env->fp_status); \
2927 void helper_##op(CPUPPCState *env, ppc_vsr_t *xt, ppc_vsr_t *xb) \
2935 t.tfld = stp##_to_##ttp(xb->sfld, &env->fp_status); \
2960 void helper_##op(CPUPPCState *env, ppc_vsr_t *xt, ppc_vsr_t *xb) \
2966 t.VsrW(2 * i) = stp##_to_##ttp(xb->VsrD(i), &env->fp_status); \
2978 void helper_##op(CPUPPCState *env, ppc_vsr_t *xt, ppc_vsr_t *xb)\
2981 xt->f128 = tp##_to_float128(xb->s128, &env->fp_status); \
2999 ppc_vsr_t *xt, ppc_vsr_t *xb) \
3004 t.tfld = stp##_to_##ttp(xb->sfld, &env->fp_status); \
3031 void helper_##op(CPUPPCState *env, ppc_vsr_t *xt, ppc_vsr_t *xb) \
3045 if (unlikely(tp##_is_signaling_nan(xb->fld, \
3048 t.fld = tp##_snan_to_qnan(xb->fld); \
3050 t.fld = tp##_round_to_int(xb->fld, &env->fp_status); \
3089 uint64_t helper_xsrsp(CPUPPCState *env, uint64_t xb) in helper_xsrsp() argument
3093 uint64_t xt = do_frsp(env, xb, GETPC()); in helper_xsrsp()
3100 void helper_XVXSIGSP(ppc_vsr_t *xt, ppc_vsr_t *xb) in helper_XVXSIGSP() argument
3106 exp = (xb->VsrW(i) >> 23) & 0xFF; in helper_XVXSIGSP()
3107 fraction = xb->VsrW(i) & 0x7FFFFF; in helper_XVXSIGSP()
3196 ppc_vsr_t *xt, ppc_vsr_t *xb) in helper_xsrqpi() argument
3233 t.f128 = float128_round_to_int(xb->f128, &tstat); in helper_xsrqpi()
3250 ppc_vsr_t *xt, ppc_vsr_t *xb) in helper_xsrqpxp() argument
3287 round_res = float128_to_floatx80(xb->f128, &tstat); in helper_xsrqpxp()
3302 ppc_vsr_t *xt, ppc_vsr_t *xb) in helper_xssqrtqp() argument
3315 t.f128 = float128_sqrt(xb->f128, &tstat); in helper_xssqrtqp()
3328 ppc_vsr_t *xt, ppc_vsr_t *xa, ppc_vsr_t *xb) in helper_xssubqp() argument
3341 t.f128 = float128_sub(xa->f128, xb->f128, &tstat); in helper_xssubqp()