qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [PATCH 6/7] tcg: Tidy brcond optimization


From: Richard Henderson
Subject: [Qemu-devel] [PATCH 6/7] tcg: Tidy brcond optimization
Date: Thu, 27 Sep 2012 10:19:56 -0700

Do the memset once.  Don't reset_temp before doing so.

Signed-off-by: Richard Henderson <address@hidden>
---
 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




reply via email to

[Prev in Thread] Current Thread [Next in Thread]