[mini] avoid checking condition twice in local-prop
authorBernhard Urban <bernhard.urban@xamarin.com>
Fri, 20 May 2016 18:52:47 +0000 (11:52 -0700)
committerBernhard Urban <bernhard.urban@xamarin.com>
Thu, 26 May 2016 22:41:29 +0000 (15:41 -0700)
mono/mini/local-propagation.c

index c8cd9d6d0a6e5c19e57f5c9311a84448442ef4eb..a35a7a39f21405c92b2b9602205116099f4b7852 100644 (file)
@@ -555,13 +555,13 @@ mono_local_cprop (MonoCompile *cfg)
                                        ins->inst_destbasereg = def->sreg1;
                                        ins->inst_offset += def->inst_imm;
                                }
+
+                               if (!MONO_IS_STORE_MEMBASE (ins) && !vreg_is_volatile (cfg, ins->dreg)) {
+                                       defs [ins->dreg] = ins;
+                                       def_index [ins->dreg] = ins_index;
+                               }
                        }
                        
-                       if ((spec [MONO_INST_DEST] != ' ') && !MONO_IS_STORE_MEMBASE (ins) && !vreg_is_volatile (cfg, ins->dreg)) {
-                               defs [ins->dreg] = ins;
-                               def_index [ins->dreg] = ins_index;
-                       }
-
                        if (MONO_IS_CALL (ins))
                                last_call_index = ins_index;