mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-05 08:43:55 -06:00
target/riscv: fpu_helper: Match function defs in HELPER macros
Update the function definitions generated in helper.h to match the actual function implementations. Also remove all compile time XLEN checks when building. Signed-off-by: Alistair Francis <alistair.francis@wdc.com> Message-id: 614c369cb0000d070873a647b8aac7e023cba145.1608142916.git.alistair.francis@wdc.com
This commit is contained in:
parent
2206ffa68f
commit
5b6c291b8d
2 changed files with 8 additions and 24 deletions
|
@ -223,7 +223,6 @@ target_ulong helper_fcvt_wu_s(CPURISCVState *env, uint64_t rs1)
|
||||||
return (int32_t)float32_to_uint32(frs1, &env->fp_status);
|
return (int32_t)float32_to_uint32(frs1, &env->fp_status);
|
||||||
}
|
}
|
||||||
|
|
||||||
#if defined(TARGET_RISCV64)
|
|
||||||
uint64_t helper_fcvt_l_s(CPURISCVState *env, uint64_t rs1)
|
uint64_t helper_fcvt_l_s(CPURISCVState *env, uint64_t rs1)
|
||||||
{
|
{
|
||||||
float32 frs1 = check_nanbox_s(rs1);
|
float32 frs1 = check_nanbox_s(rs1);
|
||||||
|
@ -235,7 +234,6 @@ uint64_t helper_fcvt_lu_s(CPURISCVState *env, uint64_t rs1)
|
||||||
float32 frs1 = check_nanbox_s(rs1);
|
float32 frs1 = check_nanbox_s(rs1);
|
||||||
return float32_to_uint64(frs1, &env->fp_status);
|
return float32_to_uint64(frs1, &env->fp_status);
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
uint64_t helper_fcvt_s_w(CPURISCVState *env, target_ulong rs1)
|
uint64_t helper_fcvt_s_w(CPURISCVState *env, target_ulong rs1)
|
||||||
{
|
{
|
||||||
|
@ -247,7 +245,6 @@ uint64_t helper_fcvt_s_wu(CPURISCVState *env, target_ulong rs1)
|
||||||
return nanbox_s(uint32_to_float32((uint32_t)rs1, &env->fp_status));
|
return nanbox_s(uint32_to_float32((uint32_t)rs1, &env->fp_status));
|
||||||
}
|
}
|
||||||
|
|
||||||
#if defined(TARGET_RISCV64)
|
|
||||||
uint64_t helper_fcvt_s_l(CPURISCVState *env, uint64_t rs1)
|
uint64_t helper_fcvt_s_l(CPURISCVState *env, uint64_t rs1)
|
||||||
{
|
{
|
||||||
return nanbox_s(int64_to_float32(rs1, &env->fp_status));
|
return nanbox_s(int64_to_float32(rs1, &env->fp_status));
|
||||||
|
@ -257,7 +254,6 @@ uint64_t helper_fcvt_s_lu(CPURISCVState *env, uint64_t rs1)
|
||||||
{
|
{
|
||||||
return nanbox_s(uint64_to_float32(rs1, &env->fp_status));
|
return nanbox_s(uint64_to_float32(rs1, &env->fp_status));
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
target_ulong helper_fclass_s(uint64_t rs1)
|
target_ulong helper_fclass_s(uint64_t rs1)
|
||||||
{
|
{
|
||||||
|
@ -336,7 +332,6 @@ target_ulong helper_fcvt_wu_d(CPURISCVState *env, uint64_t frs1)
|
||||||
return (int32_t)float64_to_uint32(frs1, &env->fp_status);
|
return (int32_t)float64_to_uint32(frs1, &env->fp_status);
|
||||||
}
|
}
|
||||||
|
|
||||||
#if defined(TARGET_RISCV64)
|
|
||||||
uint64_t helper_fcvt_l_d(CPURISCVState *env, uint64_t frs1)
|
uint64_t helper_fcvt_l_d(CPURISCVState *env, uint64_t frs1)
|
||||||
{
|
{
|
||||||
return float64_to_int64(frs1, &env->fp_status);
|
return float64_to_int64(frs1, &env->fp_status);
|
||||||
|
@ -346,7 +341,6 @@ uint64_t helper_fcvt_lu_d(CPURISCVState *env, uint64_t frs1)
|
||||||
{
|
{
|
||||||
return float64_to_uint64(frs1, &env->fp_status);
|
return float64_to_uint64(frs1, &env->fp_status);
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
uint64_t helper_fcvt_d_w(CPURISCVState *env, target_ulong rs1)
|
uint64_t helper_fcvt_d_w(CPURISCVState *env, target_ulong rs1)
|
||||||
{
|
{
|
||||||
|
@ -358,7 +352,6 @@ uint64_t helper_fcvt_d_wu(CPURISCVState *env, target_ulong rs1)
|
||||||
return uint32_to_float64((uint32_t)rs1, &env->fp_status);
|
return uint32_to_float64((uint32_t)rs1, &env->fp_status);
|
||||||
}
|
}
|
||||||
|
|
||||||
#if defined(TARGET_RISCV64)
|
|
||||||
uint64_t helper_fcvt_d_l(CPURISCVState *env, uint64_t rs1)
|
uint64_t helper_fcvt_d_l(CPURISCVState *env, uint64_t rs1)
|
||||||
{
|
{
|
||||||
return int64_to_float64(rs1, &env->fp_status);
|
return int64_to_float64(rs1, &env->fp_status);
|
||||||
|
@ -368,7 +361,6 @@ uint64_t helper_fcvt_d_lu(CPURISCVState *env, uint64_t rs1)
|
||||||
{
|
{
|
||||||
return uint64_to_float64(rs1, &env->fp_status);
|
return uint64_to_float64(rs1, &env->fp_status);
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
target_ulong helper_fclass_d(uint64_t frs1)
|
target_ulong helper_fclass_d(uint64_t frs1)
|
||||||
{
|
{
|
||||||
|
|
|
@ -27,16 +27,12 @@ DEF_HELPER_FLAGS_3(flt_s, TCG_CALL_NO_RWG, tl, env, i64, i64)
|
||||||
DEF_HELPER_FLAGS_3(feq_s, TCG_CALL_NO_RWG, tl, env, i64, i64)
|
DEF_HELPER_FLAGS_3(feq_s, TCG_CALL_NO_RWG, tl, env, i64, i64)
|
||||||
DEF_HELPER_FLAGS_2(fcvt_w_s, TCG_CALL_NO_RWG, tl, env, i64)
|
DEF_HELPER_FLAGS_2(fcvt_w_s, TCG_CALL_NO_RWG, tl, env, i64)
|
||||||
DEF_HELPER_FLAGS_2(fcvt_wu_s, TCG_CALL_NO_RWG, tl, env, i64)
|
DEF_HELPER_FLAGS_2(fcvt_wu_s, TCG_CALL_NO_RWG, tl, env, i64)
|
||||||
#if defined(TARGET_RISCV64)
|
DEF_HELPER_FLAGS_2(fcvt_l_s, TCG_CALL_NO_RWG, i64, env, i64)
|
||||||
DEF_HELPER_FLAGS_2(fcvt_l_s, TCG_CALL_NO_RWG, tl, env, i64)
|
DEF_HELPER_FLAGS_2(fcvt_lu_s, TCG_CALL_NO_RWG, i64, env, i64)
|
||||||
DEF_HELPER_FLAGS_2(fcvt_lu_s, TCG_CALL_NO_RWG, tl, env, i64)
|
|
||||||
#endif
|
|
||||||
DEF_HELPER_FLAGS_2(fcvt_s_w, TCG_CALL_NO_RWG, i64, env, tl)
|
DEF_HELPER_FLAGS_2(fcvt_s_w, TCG_CALL_NO_RWG, i64, env, tl)
|
||||||
DEF_HELPER_FLAGS_2(fcvt_s_wu, TCG_CALL_NO_RWG, i64, env, tl)
|
DEF_HELPER_FLAGS_2(fcvt_s_wu, TCG_CALL_NO_RWG, i64, env, tl)
|
||||||
#if defined(TARGET_RISCV64)
|
DEF_HELPER_FLAGS_2(fcvt_s_l, TCG_CALL_NO_RWG, i64, env, i64)
|
||||||
DEF_HELPER_FLAGS_2(fcvt_s_l, TCG_CALL_NO_RWG, i64, env, tl)
|
DEF_HELPER_FLAGS_2(fcvt_s_lu, TCG_CALL_NO_RWG, i64, env, i64)
|
||||||
DEF_HELPER_FLAGS_2(fcvt_s_lu, TCG_CALL_NO_RWG, i64, env, tl)
|
|
||||||
#endif
|
|
||||||
DEF_HELPER_FLAGS_1(fclass_s, TCG_CALL_NO_RWG_SE, tl, i64)
|
DEF_HELPER_FLAGS_1(fclass_s, TCG_CALL_NO_RWG_SE, tl, i64)
|
||||||
|
|
||||||
/* Floating Point - Double Precision */
|
/* Floating Point - Double Precision */
|
||||||
|
@ -54,16 +50,12 @@ DEF_HELPER_FLAGS_3(flt_d, TCG_CALL_NO_RWG, tl, env, i64, i64)
|
||||||
DEF_HELPER_FLAGS_3(feq_d, TCG_CALL_NO_RWG, tl, env, i64, i64)
|
DEF_HELPER_FLAGS_3(feq_d, TCG_CALL_NO_RWG, tl, env, i64, i64)
|
||||||
DEF_HELPER_FLAGS_2(fcvt_w_d, TCG_CALL_NO_RWG, tl, env, i64)
|
DEF_HELPER_FLAGS_2(fcvt_w_d, TCG_CALL_NO_RWG, tl, env, i64)
|
||||||
DEF_HELPER_FLAGS_2(fcvt_wu_d, TCG_CALL_NO_RWG, tl, env, i64)
|
DEF_HELPER_FLAGS_2(fcvt_wu_d, TCG_CALL_NO_RWG, tl, env, i64)
|
||||||
#if defined(TARGET_RISCV64)
|
DEF_HELPER_FLAGS_2(fcvt_l_d, TCG_CALL_NO_RWG, i64, env, i64)
|
||||||
DEF_HELPER_FLAGS_2(fcvt_l_d, TCG_CALL_NO_RWG, tl, env, i64)
|
DEF_HELPER_FLAGS_2(fcvt_lu_d, TCG_CALL_NO_RWG, i64, env, i64)
|
||||||
DEF_HELPER_FLAGS_2(fcvt_lu_d, TCG_CALL_NO_RWG, tl, env, i64)
|
|
||||||
#endif
|
|
||||||
DEF_HELPER_FLAGS_2(fcvt_d_w, TCG_CALL_NO_RWG, i64, env, tl)
|
DEF_HELPER_FLAGS_2(fcvt_d_w, TCG_CALL_NO_RWG, i64, env, tl)
|
||||||
DEF_HELPER_FLAGS_2(fcvt_d_wu, TCG_CALL_NO_RWG, i64, env, tl)
|
DEF_HELPER_FLAGS_2(fcvt_d_wu, TCG_CALL_NO_RWG, i64, env, tl)
|
||||||
#if defined(TARGET_RISCV64)
|
DEF_HELPER_FLAGS_2(fcvt_d_l, TCG_CALL_NO_RWG, i64, env, i64)
|
||||||
DEF_HELPER_FLAGS_2(fcvt_d_l, TCG_CALL_NO_RWG, i64, env, tl)
|
DEF_HELPER_FLAGS_2(fcvt_d_lu, TCG_CALL_NO_RWG, i64, env, i64)
|
||||||
DEF_HELPER_FLAGS_2(fcvt_d_lu, TCG_CALL_NO_RWG, i64, env, tl)
|
|
||||||
#endif
|
|
||||||
DEF_HELPER_FLAGS_1(fclass_d, TCG_CALL_NO_RWG_SE, tl, i64)
|
DEF_HELPER_FLAGS_1(fclass_d, TCG_CALL_NO_RWG_SE, tl, i64)
|
||||||
|
|
||||||
/* Special functions */
|
/* Special functions */
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue