[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [EXTERNAL][PATCH] target/mips: Fix emulation of ST.W in
From: |
Aleksandar Rikalo |
Subject: |
Re: [Qemu-devel] [EXTERNAL][PATCH] target/mips: Fix emulation of ST.W in system mode |
Date: |
Wed, 28 Aug 2019 16:47:55 +0000 |
> From: Aleksandar Markovic <address@hidden>
> Sent: Wednesday, August 28, 2019 6:20 PM
> To: address@hidden <address@hidden>
> Cc: Aleksandar Markovic <address@hidden>; Aleksandar Rikalo <address@hidden>
> Subject: [EXTERNAL][PATCH] target/mips: Fix emulation of ST.W in system mode
>
> From: Aleksandar Markovic <address@hidden>
>
> Order of arguments in helper_ret_stl_mmu() invocations was wrong,
> apparently caused by misplaced multiline copy-and-paste.
>
> Fixes: 6decc57 "target/mips: Fix MSA instructions ST.<B|H|W|D> on
> big endian host"
>
> Signed-off-by: Aleksandar Markovic <address@hidden>
> ---
> target/mips/op_helper.c | 16 ++++++++--------
> 1 file changed, 8 insertions(+), 8 deletions(-)
>
> diff --git a/target/mips/op_helper.c b/target/mips/op_helper.c
> index 5874029..e55e300 100644
> --- a/target/mips/op_helper.c
> +++ b/target/mips/op_helper.c
> @@ -4842,15 +4842,15 @@ void helper_msa_st_w(CPUMIPSState *env, uint32_t wd,
> ensure_writable_pages(env, addr, mmu_idx, GETPC());
> #if !defined(CONFIG_USER_ONLY)
> #if !defined(HOST_WORDS_BIGENDIAN)
> - helper_ret_stl_mmu(env, addr + (0 << DF_WORD), oi, GETPC(), pwd->w[0]);
> - helper_ret_stl_mmu(env, addr + (1 << DF_WORD), oi, GETPC(), pwd->w[1]);
> - helper_ret_stl_mmu(env, addr + (2 << DF_WORD), oi, GETPC(), pwd->w[2]);
> - helper_ret_stl_mmu(env, addr + (3 << DF_WORD), oi, GETPC(), pwd->w[3]);
> + helper_ret_stl_mmu(env, addr + (0 << DF_WORD), pwd->w[0], oi, GETPC());
> + helper_ret_stl_mmu(env, addr + (1 << DF_WORD), pwd->w[1], oi, GETPC());
> + helper_ret_stl_mmu(env, addr + (2 << DF_WORD), pwd->w[2], oi, GETPC());
> + helper_ret_stl_mmu(env, addr + (3 << DF_WORD), pwd->w[3], oi, GETPC());
> #else
> - helper_ret_stl_mmu(env, addr + (1 << DF_WORD), oi, GETPC(), pwd->w[0]);
> - helper_ret_stl_mmu(env, addr + (0 << DF_WORD), oi, GETPC(), pwd->w[1]);
> - helper_ret_stl_mmu(env, addr + (3 << DF_WORD), oi, GETPC(), pwd->w[2]);
> - helper_ret_stl_mmu(env, addr + (2 << DF_WORD), oi, GETPC(), pwd->w[3]);
> + helper_ret_stl_mmu(env, addr + (1 << DF_WORD), pwd->w[0], oi, GETPC());
> + helper_ret_stl_mmu(env, addr + (0 << DF_WORD), pwd->w[1], oi, GETPC());
> + helper_ret_stl_mmu(env, addr + (3 << DF_WORD), pwd->w[2], oi, GETPC());
> + helper_ret_stl_mmu(env, addr + (2 << DF_WORD), pwd->w[3], oi, GETPC());
> #endif
> #else
> #if !defined(HOST_WORDS_BIGENDIAN)
> --
> 2.7.4
Reviewed-by: Aleksandar Rikalo <address@hidden>