target/riscv/fpu_helper.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
helper_froundnx_h function mistakenly uses single percision nanbox
check instead of the half percision one. This patch fixes the issue.
Signed-off-by: Branislav Brzak <brzakbranislav@gmail.com>
---
target/riscv/fpu_helper.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/target/riscv/fpu_helper.c b/target/riscv/fpu_helper.c
index 871a70a316..91b1a56d10 100644
--- a/target/riscv/fpu_helper.c
+++ b/target/riscv/fpu_helper.c
@@ -676,7 +676,7 @@ uint64_t helper_fround_h(CPURISCVState *env, uint64_t rs1)
uint64_t helper_froundnx_h(CPURISCVState *env, uint64_t rs1)
{
- float16 frs1 = check_nanbox_s(env, rs1);
+ float16 frs1 = check_nanbox_h(env, rs1);
frs1 = float16_round_to_int(frs1, &env->fp_status);
return nanbox_h(env, frs1);
}
--
2.34.1
On Sun, Jun 9, 2024 at 3:32 PM Branislav Brzak <brzakbranislav@gmail.com> wrote:
>
> helper_froundnx_h function mistakenly uses single percision nanbox
> check instead of the half percision one. This patch fixes the issue.
>
> Signed-off-by: Branislav Brzak <brzakbranislav@gmail.com>
Thanks!
Applied to riscv-to-apply.next
Alistair
> ---
> target/riscv/fpu_helper.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/target/riscv/fpu_helper.c b/target/riscv/fpu_helper.c
> index 871a70a316..91b1a56d10 100644
> --- a/target/riscv/fpu_helper.c
> +++ b/target/riscv/fpu_helper.c
> @@ -676,7 +676,7 @@ uint64_t helper_fround_h(CPURISCVState *env, uint64_t rs1)
>
> uint64_t helper_froundnx_h(CPURISCVState *env, uint64_t rs1)
> {
> - float16 frs1 = check_nanbox_s(env, rs1);
> + float16 frs1 = check_nanbox_h(env, rs1);
> frs1 = float16_round_to_int(frs1, &env->fp_status);
> return nanbox_h(env, frs1);
> }
> --
> 2.34.1
>
>
On 6/8/24 14:45, Branislav Brzak wrote:
> t/riscv/fpu_helper.c b/target/riscv/fpu_helper.c
> index 871a70a316..91b1a56d10 100644
> --- a/target/riscv/fpu_helper.c
> +++ b/target/riscv/fpu_helper.c
> @@ -676,7 +676,7 @@ uint64_t helper_fround_h(CPURISCVState *env, uint64_t rs1)
>
> uint64_t helper_froundnx_h(CPURISCVState *env, uint64_t rs1)
> {
> - float16 frs1 = check_nanbox_s(env, rs1);
> + float16 frs1 = check_nanbox_h(env, rs1);
> frs1 = float16_round_to_int(frs1, &env->fp_status);
> return nanbox_h(env, frs1);
> }
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
r~
On Sun, Jun 9, 2024 at 3:32 PM Branislav Brzak <brzakbranislav@gmail.com> wrote:
>
> helper_froundnx_h function mistakenly uses single percision nanbox
> check instead of the half percision one. This patch fixes the issue.
>
> Signed-off-by: Branislav Brzak <brzakbranislav@gmail.com>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Alistair
> ---
> target/riscv/fpu_helper.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/target/riscv/fpu_helper.c b/target/riscv/fpu_helper.c
> index 871a70a316..91b1a56d10 100644
> --- a/target/riscv/fpu_helper.c
> +++ b/target/riscv/fpu_helper.c
> @@ -676,7 +676,7 @@ uint64_t helper_fround_h(CPURISCVState *env, uint64_t rs1)
>
> uint64_t helper_froundnx_h(CPURISCVState *env, uint64_t rs1)
> {
> - float16 frs1 = check_nanbox_s(env, rs1);
> + float16 frs1 = check_nanbox_h(env, rs1);
> frs1 = float16_round_to_int(frs1, &env->fp_status);
> return nanbox_h(env, frs1);
> }
> --
> 2.34.1
>
>
© 2016 - 2026 Red Hat, Inc.