target/arm: Use float_status in helper_fcvtx_f64_to_f32
Pass float_status not env to match other functions. Signed-off-by: Richard Henderson <richard.henderson@linaro.org> Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Message-id: 20241206031952.78776-2-richard.henderson@linaro.org Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
This commit is contained in:
parent
1db3b63b5c
commit
eec2584d3c
@ -384,10 +384,9 @@ float64 HELPER(frecpx_f64)(float64 a, float_status *fpst)
|
||||
}
|
||||
}
|
||||
|
||||
float32 HELPER(fcvtx_f64_to_f32)(float64 a, CPUARMState *env)
|
||||
float32 HELPER(fcvtx_f64_to_f32)(float64 a, float_status *fpst)
|
||||
{
|
||||
float32 r;
|
||||
float_status *fpst = &env->vfp.fp_status;
|
||||
int old = get_float_rounding_mode(fpst);
|
||||
|
||||
set_float_rounding_mode(float_round_to_odd, fpst);
|
||||
|
@ -44,7 +44,7 @@ DEF_HELPER_FLAGS_3(rsqrtsf_f64, TCG_CALL_NO_RWG, f64, f64, f64, fpst)
|
||||
DEF_HELPER_FLAGS_2(frecpx_f64, TCG_CALL_NO_RWG, f64, f64, fpst)
|
||||
DEF_HELPER_FLAGS_2(frecpx_f32, TCG_CALL_NO_RWG, f32, f32, fpst)
|
||||
DEF_HELPER_FLAGS_2(frecpx_f16, TCG_CALL_NO_RWG, f16, f16, fpst)
|
||||
DEF_HELPER_FLAGS_2(fcvtx_f64_to_f32, TCG_CALL_NO_RWG, f32, f64, env)
|
||||
DEF_HELPER_FLAGS_2(fcvtx_f64_to_f32, TCG_CALL_NO_RWG, f32, f64, fpst)
|
||||
DEF_HELPER_FLAGS_3(crc32_64, TCG_CALL_NO_RWG_SE, i64, i64, i64, i32)
|
||||
DEF_HELPER_FLAGS_3(crc32c_64, TCG_CALL_NO_RWG_SE, i64, i64, i64, i32)
|
||||
DEF_HELPER_FLAGS_3(advsimd_maxh, TCG_CALL_NO_RWG, f16, f16, f16, fpst)
|
||||
|
@ -9102,7 +9102,7 @@ static void gen_fcvtxn_sd(TCGv_i64 d, TCGv_i64 n)
|
||||
* with von Neumann rounding (round to odd)
|
||||
*/
|
||||
TCGv_i32 tmp = tcg_temp_new_i32();
|
||||
gen_helper_fcvtx_f64_to_f32(tmp, n, tcg_env);
|
||||
gen_helper_fcvtx_f64_to_f32(tmp, n, fpstatus_ptr(FPST_FPCR));
|
||||
tcg_gen_extu_i32_i64(d, tmp);
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user