diff options
Diffstat (limited to 'target-ppc')
-rw-r--r-- | target-ppc/translate.c | 7 |
1 files changed, 1 insertions, 6 deletions
diff --git a/target-ppc/translate.c b/target-ppc/translate.c index 2d646b9afc..275f7807c9 100644 --- a/target-ppc/translate.c +++ b/target-ppc/translate.c @@ -5300,12 +5300,7 @@ static always_inline void gen_load_gpr64(TCGv t, int reg) { #if defined(TARGET_PPC64) tcg_gen_mov_i64(t, cpu_gpr[reg]); #else - tcg_gen_extu_i32_i64(t, cpu_gprh[reg]); - tcg_gen_shli_i64(t, t, 32); - TCGv tmp = tcg_temp_local_new(TCG_TYPE_I64); - tcg_gen_extu_i32_i64(tmp, cpu_gpr[reg]); - tcg_gen_or_i64(t, t, tmp); - tcg_temp_free(tmp); + tcg_gen_concat_i32_i64(t, cpu_gpr[reg], cpu_gprh[reg]); #endif } |