Home
last modified time | relevance | path

Searched refs:fp_status (Results 1 – 25 of 68) sorted by relevance

123

/qemu/target/mips/tcg/
H A Dfpu_helper.c236 fdt0 = float64_sqrt(fdt0, &env->active_fpu.fp_status); in helper_float_sqrt_d()
243 fst0 = float32_sqrt(fst0, &env->active_fpu.fp_status); in helper_float_sqrt_s()
413 &env->active_fpu.fp_status); in helper_float_round_l_d()
429 &env->active_fpu.fp_status); in helper_float_round_l_s()
445 &env->active_fpu.fp_status); in helper_float_round_w_d()
461 &env->active_fpu.fp_status); in helper_float_round_w_s()
710 &env->active_fpu.fp_status); in helper_float_round_2008_l_d()
728 &env->active_fpu.fp_status); in helper_float_round_2008_l_s()
746 &env->active_fpu.fp_status); in helper_float_round_2008_w_d()
764 &env->active_fpu.fp_status); in helper_float_round_2008_w_s()
[all …]
/qemu/target/xtensa/
H A Dfpu_helper.c169 &env->fp_status); in HELPER()
224 &env->fp_status); in HELPER()
231 &env->fp_status); in HELPER()
249 return float64_sqrt(v, &env->fp_status); in HELPER()
255 return float32_sqrt(v, &env->fp_status); in HELPER()
261 float_status fp_status = env->fp_status; in HELPER() local
265 res = float64_to_int32(float64_scalbn(v, scale, &fp_status), &fp_status); in HELPER()
274 float_status fp_status = env->fp_status; in HELPER() local
278 res = float32_to_int32(float32_scalbn(v, scale, &fp_status), &fp_status); in HELPER()
287 float_status fp_status = env->fp_status; in HELPER() local
[all …]
/qemu/target/loongarch/tcg/
H A Dfpu_helper.c32 &env->fp_status); in restore_fp_status()
33 set_flush_to_zero(0, &env->fp_status); in restore_fp_status()
98 fd = float64_add(fj, fk, &env->fp_status); in helper_fadd_d()
116 fd = float64_sub(fj, fk, &env->fp_status); in helper_fsub_d()
134 fd = float64_mul(fj, fk, &env->fp_status); in helper_fmul_d()
152 fd = float64_div(fj, fk, &env->fp_status); in helper_fdiv_d()
252 &env->fp_status); in helper_fscaleb_d()
270 fd = float64_sqrt(fj, &env->fp_status); in helper_fsqrt_d()
308 fp = float64_sqrt(fj, &env->fp_status); in helper_frsqrt_d()
318 float_status *status = &env->fp_status; in helper_flogb_s()
[all …]
/qemu/target/m68k/
H A Dfpu_helper.c384 a = floatx80_round(val0->d, &env->fp_status); in HELPER()
385 b = floatx80_round(val1->d, &env->fp_status); in HELPER()
387 res->d = floatx80_mul(a, b, &env->fp_status); in HELPER()
417 a = floatx80_round(val1->d, &env->fp_status); in HELPER()
418 b = floatx80_round(val0->d, &env->fp_status); in HELPER()
420 res->d = floatx80_div(a, b, &env->fp_status); in HELPER()
602 &env->fp_status); in HELPER()
618 float_status fp_status = { }; in HELPER() local
625 get_floatx80_rounding_precision(&env->fp_status), &fp_status); in HELPER()
709 res1->d = floatx80_cos(a, &env->fp_status); in HELPER()
[all …]
/qemu/target/sh4/
H A Dop_helper.c258 t0 = float32_add(t0, t1, &env->fp_status); in helper_fadd_FT()
266 t0 = float64_add(t0, t1, &env->fp_status); in helper_fadd_DT()
332 t0 = float32_div(t0, t1, &env->fp_status); in helper_fdiv_FT()
340 t0 = float64_div(t0, t1, &env->fp_status); in helper_fdiv_DT()
374 t0 = float32_mul(t0, t1, &env->fp_status); in helper_fmul_FT()
382 t0 = float64_mul(t0, t1, &env->fp_status); in helper_fmul_DT()
390 t0 = float32_sqrt(t0, &env->fp_status); in helper_fsqrt_FT()
398 t0 = float64_sqrt(t0, &env->fp_status); in helper_fsqrt_DT()
407 t0 = float32_sqrt(t0, &env->fp_status); in helper_fsrra_FT()
467 &env->fp_status); in helper_fipr()
[all …]
/qemu/target/riscv/
H A Dfpu_helper.c51 set_float_exception_flags(soft, &env->fp_status); in riscv_cpu_set_fflags()
81 set_float_rounding_mode(softrm, &env->fp_status); in helper_set_rounding_mode()
118 set_float_rounding_mode(softrm, &env->fp_status); in helper_set_rounding_mode_chkfrm()
169 &env->fp_status); in helper_fmsub_d()
188 &env->fp_status); in helper_fnmsub_d()
290 return float32_le(frs1, frs2, &env->fp_status); in helper_fle_s()
373 float_status *fs = &env->fp_status; in helper_fround_s()
452 return float64_sqrt(frs1, &env->fp_status); in helper_fsqrt_d()
517 return int64_to_float64(rs1, &env->fp_status); in helper_fcvt_d_l()
532 float_status *fs = &env->fp_status; in helper_fround_d()
[all …]
/qemu/target/hppa/
H A Dfpu_helper.c47 set_float_rounding_mode(rm, &env->fp_status); in HELPER()
50 set_flush_to_zero(d, &env->fp_status); in HELPER()
51 set_flush_inputs_to_zero(d, &env->fp_status); in HELPER()
74 set_float_exception_flags(0, &env->fp_status); in update_fr0_op()
92 float32 ret = float32_sqrt(arg, &env->fp_status); in HELPER()
106 float32 ret = float32_add(a, b, &env->fp_status); in HELPER()
113 float32 ret = float32_sub(a, b, &env->fp_status); in HELPER()
120 float32 ret = float32_mul(a, b, &env->fp_status); in HELPER()
127 float32 ret = float32_div(a, b, &env->fp_status); in HELPER()
432 &env->fp_status); in HELPER()
[all …]
/qemu/target/sparc/
H A Dfop_helper.c55 set_float_exception_flags(0, &env->fp_status); in check_ieee_exceptions()
90 float32 ret = float32_add(src1, src2, &env->fp_status); in helper_fadds()
97 float32 ret = float32_sub(src1, src2, &env->fp_status); in helper_fsubs()
176 &env->fp_status); in helper_fsmuld()
185 &env->fp_status); in helper_fdmulq()
193 float32 ret = int32_to_float32(src, &env->fp_status); in helper_fitos()
200 float64 ret = int32_to_float64(src, &env->fp_status); in helper_fitod()
327 float32 ret = float32_sqrt(src, &env->fp_status); in helper_fsqrts()
334 float64 ret = float64_sqrt(src, &env->fp_status); in helper_fsqrtd()
420 &env->fp_status); in helper_fnsmuld()
[all …]
/qemu/target/i386/tcg/
H A Dfpu_helper.c115 u.f64 = floatx80_to_float64(a, &env->fp_status); in floatx80_to_double()
141 set_float_exception_flags(0, &env->fp_status); in save_exception_flags()
148 float_raise(old_flags, &env->fp_status); in merge_exception_flags()
206 FT0 = int32_to_floatx80(val, &env->fp_status); in helper_fildl_FT0()
307 val = floatx80_to_int32(ST0, &env->fp_status); in helper_fist_ST0()
321 val = floatx80_to_int32(ST0, &env->fp_status); in helper_fistl_ST0()
334 val = floatx80_to_int64(ST0, &env->fp_status); in helper_fistll_ST0()
516 ST0 = floatx80_add(ST0, FT0, &env->fp_status); in helper_fadd_ST0_FT0()
523 ST0 = floatx80_mul(ST0, FT0, &env->fp_status); in helper_fmul_ST0_FT0()
1754 &env->fp_status); in helper_fxtract()
[all …]
/qemu/target/microblaze/
H A Dop_helper.c149 set_float_exception_flags(0, &env->fp_status); in helper_fadd()
164 set_float_exception_flags(0, &env->fp_status); in helper_frsub()
178 set_float_exception_flags(0, &env->fp_status); in helper_fmul()
193 set_float_exception_flags(0, &env->fp_status); in helper_fdiv()
231 set_float_exception_flags(0, &env->fp_status); in helper_fcmp_lt()
234 r = float32_lt(fb.f, fa.f, &env->fp_status); in helper_fcmp_lt()
266 r = float32_le(fa.f, fb.f, &env->fp_status); in helper_fcmp_le()
282 r = float32_lt(fa.f, fb.f, &env->fp_status); in helper_fcmp_gt()
311 r = !float32_lt(fa.f, fb.f, &env->fp_status); in helper_fcmp_ge()
335 r = float32_to_int32(fa.f, &env->fp_status); in helper_fint()
[all …]
/qemu/target/hexagon/
H A Darch.c198 set_float_exception_flags(0, &env->fp_status); in arch_fpop_start()
201 &env->fp_status); in arch_fpop_start()
239 float_status *fp_status) in arch_sf_recip_common() argument
267 float_raise(float_flag_invalid, fp_status); in arch_sf_recip_common()
271 float_raise(float_flag_invalid, fp_status); in arch_sf_recip_common()
308 RsV = float32_scalbn(RsV, 64, fp_status); in arch_sf_recip_common()
312 RtV = float32_scalbn(RtV, 32, fp_status); in arch_sf_recip_common()
315 RtV = float32_scalbn(RtV, 64, fp_status); in arch_sf_recip_common()
316 RsV = float32_scalbn(RsV, 64, fp_status); in arch_sf_recip_common()
335 float_status *fp_status) in arch_sf_invsqrt_common() argument
[all …]
H A Dop_helper.c1198 RxV = check_nan(RxV, RxV, &env->fp_status); in HELPER()
1199 RxV = check_nan(RxV, RsV, &env->fp_status); in HELPER()
1200 RxV = check_nan(RxV, RtV, &env->fp_status); in HELPER()
1242 RxV = check_nan(RxV, RxV, &env->fp_status); in HELPER()
1243 RxV = check_nan(RxV, RsV, &env->fp_status); in HELPER()
1244 RxV = check_nan(RxV, RtV, &env->fp_status); in HELPER()
1275 RxV = check_nan(RxV, RxV, &env->fp_status); in HELPER()
1276 RxV = check_nan(RxV, RsV, &env->fp_status); in HELPER()
1277 RxV = check_nan(RxV, RtV, &env->fp_status); in HELPER()
1302 &env->fp_status); in HELPER()
[all …]
H A Dfma_emu.c593 aa = float32_to_float64(a, fp_status); in special_fmaf()
594 bb = float32_to_float64(b, fp_status); in special_fmaf()
595 cc = float32_to_float64(c, fp_status); in special_fmaf()
596 return float64_to_float32(special_fma(aa, bb, cc, fp_status), fp_status); in special_fmaf()
600 float_status *fp_status) in internal_fmafx() argument
624 tmp = float32_add(tmp, c, fp_status); in internal_fmafx()
661 return float32_mul(a, b, fp_status); in internal_mpyf()
668 float_status *fp_status) in internal_mpyhh() argument
681 return float64_mul(a, b, fp_status); in internal_mpyhh()
686 return float64_mul(a, b, fp_status); in internal_mpyhh()
[all …]
/qemu/target/openrisc/
H A Dfpu_helper.c59 int tmp = get_float_exception_flags(&env->fp_status); in HELPER()
62 set_float_exception_flags(0, &env->fp_status); in HELPER()
88 return int64_to_float64(val, &env->fp_status); in HELPER()
93 return int32_to_float32(val, &env->fp_status); in HELPER()
108 return float32_to_float64(val, &env->fp_status); in HELPER()
113 return float64_to_float32(val, &env->fp_status); in HELPER()
122 { return float32_ ## name(fdt0, fdt1, &env->fp_status); }
136 b = float64_mul(b, c, &env->fp_status); in FLOAT_CALC()
137 return float64_add(a, b, &env->fp_status); in FLOAT_CALC()
144 b = float32_mul(b, c, &env->fp_status); in helper_float_madd_s()
[all …]
/qemu/target/tricore/
H A Dfpu_helper.c42 return get_float_exception_flags(&env->fp_status) in f_get_excp_flags()
90 set_float_exception_flags(0, &env->fp_status); in f_update_psw_flags()
243 if (float32_is_signaling_nan(arg1, &env->fp_status) in helper_qseed()
316 &env->fp_status); in helper_fmsub()
340 set_flush_inputs_to_zero(0, &env->fp_status); in helper_fcmp()
353 set_flush_inputs_to_zero(1, &env->fp_status); in helper_fcmp()
362 result = float32_to_int32(f_arg, &env->fp_status); in helper_ftoi()
397 set_flush_inputs_to_zero(0, &env->fp_status); in helper_hptof()
399 set_flush_inputs_to_zero(1, &env->fp_status); in helper_hptof()
435 set_flush_to_zero(0, &env->fp_status); in helper_ftohp()
[all …]
H A Dhelper.c103 set_float_rounding_mode(float_round_nearest_even, &env->fp_status); in fpu_set_state()
106 set_float_rounding_mode(float_round_up, &env->fp_status); in fpu_set_state()
109 set_float_rounding_mode(float_round_down, &env->fp_status); in fpu_set_state()
112 set_float_rounding_mode(float_round_to_zero, &env->fp_status); in fpu_set_state()
116 set_flush_inputs_to_zero(1, &env->fp_status); in fpu_set_state()
117 set_flush_to_zero(1, &env->fp_status); in fpu_set_state()
118 set_float_detect_tininess(float_tininess_before_rounding, &env->fp_status); in fpu_set_state()
119 set_default_nan_mode(1, &env->fp_status); in fpu_set_state()
/qemu/linux-user/arm/nwfpe/
H A Dfpa11_cprt.c85 int32_to_float32(readRegister(getRd(opcode)), &fpa11->fp_status); in PerformFLT()
93 int32_to_float64(readRegister(getRd(opcode)), &fpa11->fp_status); in PerformFLT()
101 int32_to_floatx80(readRegister(getRd(opcode)), &fpa11->fp_status); in PerformFLT()
124 float32_to_int32(fpa11->fpreg[Fn].fSingle, &fpa11->fp_status)); in PerformFIX()
132 float64_to_int32(fpa11->fpreg[Fn].fDouble, &fpa11->fp_status)); in PerformFIX()
157 if (floatx80_lt(Fn,Fm, &fpa11->fp_status)) in PerformComparisonOperation()
163 if (floatx80_eq_quiet(Fn,Fm, &fpa11->fp_status)) in PerformComparisonOperation()
169 if (floatx80_lt(Fm,Fn, &fpa11->fp_status)) in PerformComparisonOperation()
205 rFn = float32_to_floatx80(fpa11->fpreg[Fn].fSingle, &fpa11->fp_status); in PerformComparison()
212 rFn = float64_to_floatx80(fpa11->fpreg[Fn].fDouble, &fpa11->fp_status); in PerformComparison()
[all …]
H A Dextended_cpdo.c56 rFm = float32_to_floatx80(fpa11->fpreg[Fm].fSingle, &fpa11->fp_status); in ExtendedCPDO()
60 rFm = float64_to_floatx80(fpa11->fpreg[Fm].fDouble, &fpa11->fp_status); in ExtendedCPDO()
77 rFn = float32_to_floatx80(fpa11->fpreg[Fn].fSingle, &fpa11->fp_status); in ExtendedCPDO()
97 fpa11->fpreg[Fd].fExtended = floatx80_add(rFn,rFm, &fpa11->fp_status); in ExtendedCPDO()
102 fpa11->fpreg[Fd].fExtended = floatx80_mul(rFn,rFm, &fpa11->fp_status); in ExtendedCPDO()
106 fpa11->fpreg[Fd].fExtended = floatx80_sub(rFn,rFm, &fpa11->fp_status); in ExtendedCPDO()
110 fpa11->fpreg[Fd].fExtended = floatx80_sub(rFm,rFn, &fpa11->fp_status); in ExtendedCPDO()
115 fpa11->fpreg[Fd].fExtended = floatx80_div(rFn,rFm, &fpa11->fp_status); in ExtendedCPDO()
120 fpa11->fpreg[Fd].fExtended = floatx80_div(rFm,rFn, &fpa11->fp_status); in ExtendedCPDO()
134 fpa11->fpreg[Fd].fExtended = floatx80_rem(rFn,rFm, &fpa11->fp_status); in ExtendedCPDO()
[all …]
H A Ddouble_cpdo.c56 rFm = float32_to_float64(fpa11->fpreg[Fm].fSingle, &fpa11->fp_status); in DoubleCPDO()
82 rFn = float32_to_float64(fpa11->fpreg[Fn].fSingle, &fpa11->fp_status); in DoubleCPDO()
99 fpa11->fpreg[Fd].fDouble = float64_add(rFn,rFm, &fpa11->fp_status); in DoubleCPDO()
104 fpa11->fpreg[Fd].fDouble = float64_mul(rFn,rFm, &fpa11->fp_status); in DoubleCPDO()
108 fpa11->fpreg[Fd].fDouble = float64_sub(rFn,rFm, &fpa11->fp_status); in DoubleCPDO()
112 fpa11->fpreg[Fd].fDouble = float64_sub(rFm,rFn, &fpa11->fp_status); in DoubleCPDO()
117 fpa11->fpreg[Fd].fDouble = float64_div(rFn,rFm, &fpa11->fp_status); in DoubleCPDO()
122 fpa11->fpreg[Fd].fDouble = float64_div(rFm,rFn, &fpa11->fp_status); in DoubleCPDO()
136 fpa11->fpreg[Fd].fDouble = float64_rem(rFn,rFm, &fpa11->fp_status); in DoubleCPDO()
176 fpa11->fpreg[Fd].fDouble = float64_round_to_int(rFm, &fpa11->fp_status); in DoubleCPDO()
[all …]
H A Dfpa11_cpdo.c79 float64_to_float32(fpa11->fpreg[Fd].fDouble, &fpa11->fp_status); in EmulateCPDO()
82 floatx80_to_float32(fpa11->fpreg[Fd].fExtended, &fpa11->fp_status); in EmulateCPDO()
90 float32_to_float64(fpa11->fpreg[Fd].fSingle, &fpa11->fp_status); in EmulateCPDO()
93 floatx80_to_float64(fpa11->fpreg[Fd].fExtended, &fpa11->fp_status); in EmulateCPDO()
101 float32_to_floatx80(fpa11->fpreg[Fd].fSingle, &fpa11->fp_status); in EmulateCPDO()
104 float64_to_floatx80(fpa11->fpreg[Fd].fDouble, &fpa11->fp_status); in EmulateCPDO()
H A Dsingle_cpdo.c79 fpa11->fpreg[Fd].fSingle = float32_add(rFn,rFm, &fpa11->fp_status); in SingleCPDO()
84 fpa11->fpreg[Fd].fSingle = float32_mul(rFn,rFm, &fpa11->fp_status); in SingleCPDO()
88 fpa11->fpreg[Fd].fSingle = float32_sub(rFn,rFm, &fpa11->fp_status); in SingleCPDO()
92 fpa11->fpreg[Fd].fSingle = float32_sub(rFm,rFn, &fpa11->fp_status); in SingleCPDO()
97 fpa11->fpreg[Fd].fSingle = float32_div(rFn,rFm, &fpa11->fp_status); in SingleCPDO()
102 fpa11->fpreg[Fd].fSingle = float32_div(rFm,rFn, &fpa11->fp_status); in SingleCPDO()
116 fpa11->fpreg[Fd].fSingle = float32_rem(rFn,rFm, &fpa11->fp_status); in SingleCPDO()
140 fpa11->fpreg[Fd].fSingle = float32_round_to_int(rFm, &fpa11->fp_status); in SingleCPDO()
144 fpa11->fpreg[Fd].fSingle = float32_sqrt(rFm, &fpa11->fp_status); in SingleCPDO()
H A Dfpa11.c95 set_float_rounding_mode(rounding_mode, &fpa11->fp_status); in SetRoundingMode()
131 set_floatx80_rounding_precision(rounding_precision, &fpa11->fp_status); in SetRoundingPrecision()
169 set_float_exception_flags(0, &fpa11->fp_status); in EmulateAll()
200 if(nRc == 1 && get_float_exception_flags(&fpa11->fp_status)) in EmulateAll()
203 nRc = -get_float_exception_flags(&fpa11->fp_status); in EmulateAll()
/qemu/target/ppc/
H A Dfpu_helper.c1619 tstat = env->fp_status; in helper_xsaddqp()
1691 tstat = env->fp_status; in helper_xsmulqp()
1765 tstat = env->fp_status; in helper_xsdivqp()
2709 tstat = env->fp_status; in helper_XSCVQPDP()
2731 float_status tstat = env->fp_status; in helper_xscvdpspn()
3230 tstat = env->fp_status; in helper_xsrqpi()
3284 tstat = env->fp_status; in helper_xsrqpxp()
3309 tstat = env->fp_status; in helper_xssqrtqp()
3335 tstat = env->fp_status; in helper_xssubqp()
3401 float_status *excp_ptr = &env->fp_status; in vsxger16()
[all …]
/qemu/target/arm/
H A Dvfp_helper.c291 return float32_sqrt(a, &env->vfp.fp_status); in VFP_HELPER()
296 return float64_sqrt(a, &env->vfp.fp_status); in VFP_HELPER()
335 DO_VFP_cmp(s, float32, float32, fp_status) in DO_VFP_cmp()
336 DO_VFP_cmp(d, float64, float64, fp_status) in DO_VFP_cmp()
477 float_status *fp_status = fpstp; in HELPER() local
480 set_float_rounding_mode(rmode, fp_status); in HELPER()
1014 return float16_round_to_int(x, fp_status); in HELPER()
1019 return float32_round_to_int(x, fp_status); in HELPER()
1032 ret = float16_round_to_int(x, fp_status); in HELPER()
1048 ret = float32_round_to_int(x, fp_status); in HELPER()
[all …]
/qemu/target/mips/
H A Dfpu_helper.h19 &env->active_fpu.fp_status); in restore_rounding_mode()
25 &env->active_fpu.fp_status); in restore_flush_mode()
36 set_snan_bit_is_one(!nan2008, &env->active_fpu.fp_status); in restore_snan_bit_mode()
37 set_default_nan_mode(!nan2008, &env->active_fpu.fp_status); in restore_snan_bit_mode()

123