From: Tom Musta Date: Mon, 25 Aug 2014 19:25:42 +0000 (-0500) Subject: target-ppc: Clean Up mullw X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=03039e5ef0b92cb3ec89ff2caa5b57fa6bf12a88;p=qmiga%2Fqemu.git target-ppc: Clean Up mullw Eliminate the unecessary ext32s TCG operation and make the multiplication operation explicitly 32 bit. Signed-off-by: Tom Musta Suggested-by: Richard Henderson Reviewed-by: Richard Henderson Signed-off-by: Alexander Graf --- diff --git a/target-ppc/translate.c b/target-ppc/translate.c index 57cb381447..ced295f079 100644 --- a/target-ppc/translate.c +++ b/target-ppc/translate.c @@ -1138,9 +1138,8 @@ static void gen_mullw(DisasContext *ctx) tcg_temp_free(t0); tcg_temp_free(t1); #else - tcg_gen_mul_tl(cpu_gpr[rD(ctx->opcode)], cpu_gpr[rA(ctx->opcode)], - cpu_gpr[rB(ctx->opcode)]); - tcg_gen_ext32s_tl(cpu_gpr[rD(ctx->opcode)], cpu_gpr[rD(ctx->opcode)]); + tcg_gen_mul_i32(cpu_gpr[rD(ctx->opcode)], cpu_gpr[rA(ctx->opcode)], + cpu_gpr[rB(ctx->opcode)]); #endif if (unlikely(Rc(ctx->opcode) != 0)) gen_set_Rc0(ctx, cpu_gpr[rD(ctx->opcode)]);