- do not optimize away Confirms with Constants
[libfirm] / ir / opt / ldst2.c
index 15482e6..80abaee 100644 (file)
@@ -42,6 +42,7 @@
 #include "obst.h"
 #include "irdump.h"
 #include "irflag_t.h"
+#include "irprintf.h"
 
 #if +0
 #define OPTIMISE_LOAD_AFTER_LOAD
@@ -699,10 +700,12 @@ static void parallelise_store(parallelise_info *pi, ir_node *irn)
                                ir_mode *store_mode = get_irn_mode(get_Store_value(pred));
                                ir_node *store_ptr  = get_Store_ptr(pred);
                                if (get_alias_relation(current_ir_graph, org_ptr, org_mode, store_ptr, store_mode) == no_alias) {
+                                       ir_node *mem;
+
                                        ir_fprintf(stderr, "St after St: %+F (%+F) does not alias %+F (%+F)\n", org_ptr, org_mode, store_ptr, store_mode);
-                                       ir_node *mem = get_Store_mem(pred);
                                        ir_nodeset_insert(&pi->user_mem, irn);
                                        //ir_fprintf(stderr, "adding %+F to user set\n", irn);
+                                       mem = get_Store_mem(pred);
                                        parallelise_store(pi, mem);
                                        return;
                                }