fix phase_reinit not correctly using the return value of the reinit function
authorMatthias Braun <matze@braunis.de>
Thu, 8 Jul 2010 09:12:05 +0000 (09:12 +0000)
committerMatthias Braun <matze@braunis.de>
Thu, 8 Jul 2010 09:12:05 +0000 (09:12 +0000)
[r27710]

ir/ir/irphase.c
ir/ir/irphase_t.h

index fd9df22..cc7a0d9 100644 (file)
@@ -100,7 +100,7 @@ void phase_reinit_irn_data(ir_phase *phase, phase_irn_reinit *data_reinit)
        for (i = 0, n = phase->n_data_ptr; i < n; ++i) {
                if (phase->data_ptr[i]) {
                        ir_node *node = get_idx_irn(irg, i);
-                       data_reinit(phase, node, phase->data_ptr[i]);
+                       phase->data_ptr[i] = data_reinit(phase, node, phase->data_ptr[i]);
                }
        }
 }
index bbce563..5950545 100644 (file)
@@ -79,7 +79,7 @@ static inline void phase_reinit_single_irn_data(ir_phase *phase, ir_node *irn,
 
        idx = get_irn_idx(irn);
        if (phase->data_ptr[idx])
-               reinit(phase, irn, phase->data_ptr[idx]);
+               phase->data_ptr[idx] = reinit(phase, irn, phase->data_ptr[idx]);
 }
 
 /**