Revision 9b686843 target-mips/translate.c

b/target-mips/translate.c
1906 1906
                TCGv r_tmp2 = new_tmp();
1907 1907
                TCGv r_tmp3 = new_tmp();
1908 1908

  
1909
                tcg_gen_ext_i32_tl(r_tmp1, cpu_T[0]);
1910
                tcg_gen_ext_i32_tl(r_tmp2, cpu_T[1]);
1909
                tcg_gen_trunc_tl_i32(r_tmp1, cpu_T[0]);
1910
                tcg_gen_trunc_tl_i32(r_tmp2, cpu_T[1]);
1911 1911
                tcg_gen_div_i32(r_tmp3, r_tmp1, r_tmp2);
1912 1912
                tcg_gen_rem_i32(r_tmp1, r_tmp1, r_tmp2);
1913
                tcg_gen_trunc_tl_i32(cpu_T[0], r_tmp3);
1914
                tcg_gen_trunc_tl_i32(cpu_T[1], r_tmp1);
1913
                tcg_gen_ext_i32_tl(cpu_T[0], r_tmp3);
1914
                tcg_gen_ext_i32_tl(cpu_T[1], r_tmp1);
1915 1915
                gen_store_LO(cpu_T[0], 0);
1916 1916
                gen_store_HI(cpu_T[1], 0);
1917 1917
                dead_tmp(r_tmp1);
......
1932 1932
                TCGv r_tmp2 = new_tmp();
1933 1933
                TCGv r_tmp3 = new_tmp();
1934 1934

  
1935
                tcg_gen_ext_i32_tl(r_tmp1, cpu_T[0]);
1936
                tcg_gen_ext_i32_tl(r_tmp2, cpu_T[1]);
1935
                tcg_gen_trunc_tl_i32(r_tmp1, cpu_T[0]);
1936
                tcg_gen_trunc_tl_i32(r_tmp2, cpu_T[1]);
1937 1937
                tcg_gen_divu_i32(r_tmp3, r_tmp1, r_tmp2);
1938 1938
                tcg_gen_remu_i32(r_tmp1, r_tmp1, r_tmp2);
1939
                tcg_gen_trunc_tl_i32(cpu_T[0], r_tmp3);
1940
                tcg_gen_trunc_tl_i32(cpu_T[1], r_tmp1);
1939
                tcg_gen_ext_i32_tl(cpu_T[0], r_tmp3);
1940
                tcg_gen_ext_i32_tl(cpu_T[1], r_tmp1);
1941 1941
                gen_store_LO(cpu_T[0], 0);
1942 1942
                gen_store_HI(cpu_T[1], 0);
1943 1943
                dead_tmp(r_tmp1);

Also available in: Unified diff