- implemented ia32 inport, outport for ir_bk_(in|out)port
[libfirm] / ir / be / beschedtrace.c
index 636929c..ba149cc 100644 (file)
@@ -282,7 +282,7 @@ static int get_reg_difference(trace_env_t *env, ir_node *irn) {
        ir_node *block = get_nodes_block(irn);
 
        if (be_is_Call(irn)) {
-               /* we want calls prefered */
+               /* we want calls preferred */
                return -5;
        }
 
@@ -302,11 +302,16 @@ static int get_reg_difference(trace_env_t *env, ir_node *irn) {
        for (i = get_irn_arity(irn) - 1; i >= 0; i--) {
                ir_node *in = get_irn_n(irn, i);
 
-               if (mode_is_datab(get_irn_mode(in)) &&           /* must be data node */
-                   !arch_irn_is(in, ignore)        &&           /* ignore "ignore" nodes :) */
-                   !be_is_live_end(env->liveness, block, in)) { /* if the value lives outside of block: do not count */
-                       num_in++;
-               }
+               if (!mode_is_datab(get_irn_mode(in)))
+                       continue;
+
+               if (arch_irn_is_ignore(in))
+                       continue;
+
+               if (be_is_live_end(env->liveness, block, in))
+                       continue;
+
+               num_in++;
        }
 
        return num_out - num_in;
@@ -497,7 +502,7 @@ static trace_env_t *trace_init(const be_irg_t *birg) {
 
        env->curr_time  = 0;
        env->sched_info = NEW_ARR_F(trace_irn_t, nn);
-       env->liveness   = be_liveness(birg);
+       env->liveness   = be_liveness(irg);
        FIRM_DBG_REGISTER(env->dbg, "firm.be.sched.trace");
 
        be_liveness_assure_chk(env->liveness);