mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-07 09:43:56 -06:00
target-tricore: fix OPC2_32_RR_DVINIT_HU having write before use on the result
If the argument r1 was the same as the extended result register r3+1, we would overwrite r1 and then use it. Signed-off-by: Bastian Koppelmann <kbastian@mail.uni-paderborn.de> Message-Id: <1432289758-6250-2-git-send-email-kbastian@mail.uni-paderborn.de>
This commit is contained in:
parent
97af820f53
commit
05b6ca9bbc
1 changed files with 1 additions and 1 deletions
|
@ -6451,8 +6451,8 @@ static void decode_rr_divide(CPUTriCoreState *env, DisasContext *ctx)
|
||||||
/* sv */
|
/* sv */
|
||||||
tcg_gen_or_tl(cpu_PSW_SV, cpu_PSW_SV, cpu_PSW_V);
|
tcg_gen_or_tl(cpu_PSW_SV, cpu_PSW_SV, cpu_PSW_V);
|
||||||
/* write result */
|
/* write result */
|
||||||
tcg_gen_mov_tl(cpu_gpr_d[r3+1], temp3);
|
|
||||||
tcg_gen_shli_tl(cpu_gpr_d[r3], cpu_gpr_d[r1], 16);
|
tcg_gen_shli_tl(cpu_gpr_d[r3], cpu_gpr_d[r1], 16);
|
||||||
|
tcg_gen_mov_tl(cpu_gpr_d[r3+1], temp3);
|
||||||
tcg_temp_free(temp);
|
tcg_temp_free(temp);
|
||||||
tcg_temp_free(temp2);
|
tcg_temp_free(temp2);
|
||||||
tcg_temp_free(temp3);
|
tcg_temp_free(temp3);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue