Do the memset once. Don't reset_temp before doing so.
Signed-off-by: Richard Henderson <[email protected]>
---
tcg/optimize.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/tcg/optimize.c b/tcg/optimize.c
index c1881fa..dfac877 100644
--- a/tcg/optimize.c
+++ b/tcg/optimize.c
@@ -771,22 +771,22 @@ static TCGArg *tcg_constant_folding(TCGContext *s,
uint16_t *tcg_opc_ptr,
tmp = do_constant_folding_cond(op, args[0], args[1], args[2]);
if (tmp != 2) {
if (tmp) {
- memset(temps, 0, nb_temps * sizeof(struct tcg_temp_info));
gen_opc_buf[op_index] = INDEX_op_br;
gen_args[0] = args[3];
gen_args += 1;
} else {
gen_opc_buf[op_index] = INDEX_op_nop;
+ args += 4;
+ break;
}
} else {
- memset(temps, 0, nb_temps * sizeof(struct tcg_temp_info));
- reset_temp(args[0]);
gen_args[0] = args[0];
gen_args[1] = args[1];
gen_args[2] = args[2];
gen_args[3] = args[3];
gen_args += 4;
}
+ memset(temps, 0, nb_temps * sizeof(struct tcg_temp_info));
args += 4;
break;
CASE_OP_32_64(movcond):
--
1.7.11.4