fix mode of call-result proj
[libfirm] / ir / opt / fp-vrp.c
index dfa0e0b..1ecafd1 100644 (file)
@@ -36,9 +36,9 @@
 #include "irdom.h"
 #include "iredges.h"
 #include "irgmod.h"
-#include "irgraph.h"
+#include "irgraph_t.h"
 #include "irgwalk.h"
-#include "irnode.h"
+#include "irnode_t.h"
 #include "iroptimize.h"
 #include "irtools.h"
 #include "tv.h"
@@ -176,6 +176,8 @@ static int transfer(ir_node* const irn)
        ir_tarval*       z;
        ir_tarval*       o;
 
+       if (is_Bad(irn)) return 0;
+
        if (m == mode_X) {
                bitinfo* const b = get_bitinfo(get_nodes_block(irn));
 
@@ -862,7 +864,6 @@ void fixpoint_vrp(ir_graph* const irg)
                /* control flow might changed */
                set_irg_extblk_inconsistent(irg);
                set_irg_doms_inconsistent(irg);
-               set_irg_loopinfo_inconsistent(irg);
                set_irg_entity_usage_state(irg, ir_entity_usage_not_computed);
        }