Commit 2c2435bdd498ab177469bec25a44e915a4d4a63a

Authored by ths
1 parent a8303d18

Fix data type mixup, spotted by malc.


git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4724 c046a42c-6fe2-441c-8c8c-71466251a162
Showing 1 changed file with 4 additions and 10 deletions
target-mips/translate.c
@@ -2595,11 +2595,8 @@ static inline void gen_mfc0_load32 (TCGv t, target_ulong off) @@ -2595,11 +2595,8 @@ static inline void gen_mfc0_load32 (TCGv t, target_ulong off)
2595 2595
2596 static inline void gen_mfc0_load64 (TCGv t, target_ulong off) 2596 static inline void gen_mfc0_load64 (TCGv t, target_ulong off)
2597 { 2597 {
2598 - TCGv r_tmp = tcg_temp_new(TCG_TYPE_I64);  
2599 -  
2600 - tcg_gen_ld_i64(r_tmp, cpu_env, off);  
2601 - tcg_gen_trunc_i64_tl(t, r_tmp);  
2602 - tcg_temp_free(r_tmp); 2598 + tcg_gen_ld_tl(t, cpu_env, off);
  2599 + tcg_gen_ext32s_tl(t, t);
2603 } 2600 }
2604 2601
2605 static inline void gen_mtc0_store32 (TCGv t, target_ulong off) 2602 static inline void gen_mtc0_store32 (TCGv t, target_ulong off)
@@ -2613,11 +2610,8 @@ static inline void gen_mtc0_store32 (TCGv t, target_ulong off) @@ -2613,11 +2610,8 @@ static inline void gen_mtc0_store32 (TCGv t, target_ulong off)
2613 2610
2614 static inline void gen_mtc0_store64 (TCGv t, target_ulong off) 2611 static inline void gen_mtc0_store64 (TCGv t, target_ulong off)
2615 { 2612 {
2616 - TCGv r_tmp = tcg_temp_new(TCG_TYPE_I64);  
2617 -  
2618 - tcg_gen_ext_tl_i64(r_tmp, t);  
2619 - tcg_gen_st_i64(r_tmp, cpu_env, off);  
2620 - tcg_temp_free(r_tmp); 2613 + tcg_gen_ext32s_tl(t, t);
  2614 + tcg_gen_st_tl(t, cpu_env, off);
2621 } 2615 }
2622 2616
2623 static void gen_mfc0 (CPUState *env, DisasContext *ctx, int reg, int sel) 2617 static void gen_mfc0 (CPUState *env, DisasContext *ctx, int reg, int sel)