- add more passes
[libfirm] / ir / opt / ldst2.c
index 1bb87df..0c72988 100644 (file)
@@ -23,9 +23,7 @@
  * @author  Christoph Mallon
  * @version $Id: $
  */
-#ifdef HAVE_CONFIG_H
 #include "config.h"
-#endif
 
 #include "iroptimize.h"
 
@@ -43,6 +41,7 @@
 #include "irdump.h"
 #include "irflag_t.h"
 #include "irprintf.h"
+#include "irtools.h"
 
 #if +0
 #define OPTIMISE_LOAD_AFTER_LOAD
@@ -543,6 +542,7 @@ static void Detotalise(ir_graph* irg)
 #endif
 
 
+#if 0
 static void AddSyncPreds(ir_nodeset_t* preds, ir_node* sync)
 {
        size_t n = get_Sync_n_preds(sync);
@@ -558,7 +558,6 @@ static void AddSyncPreds(ir_nodeset_t* preds, ir_node* sync)
        }
 }
 
-#if 0
 static void NormaliseSync(ir_node* node, void* env)
 {
        ir_nodeset_t preds;
@@ -788,7 +787,7 @@ static void walker(ir_node *proj, void *env)
        }
 
        n = ir_nodeset_size(&pi.user_mem);
-       if (n != 0) { /* nothing happend otherwise */
+       if (n != 0) { /* nothing happened otherwise */
                ir_graph               *irg  = current_ir_graph;
                ir_node                *sync;
                ir_node               **in;
@@ -807,11 +806,11 @@ static void walker(ir_node *proj, void *env)
                        in[i++] = p;
                }
                assert(i == n);
-               sync = new_r_Sync(irg, block, n, in);
+               sync = new_r_Sync(block, n, in);
                exchange(proj, sync);
 
                assert(pn_Load_M == pn_Store_M);
-               proj = new_r_Proj(irg, block, mem_op, mode_M, pn_Load_M);
+               proj = new_r_Proj(block, mem_op, mode_M, pn_Load_M);
                set_Sync_pred(sync, 0, proj);
 
                n = ir_nodeset_size(&pi.this_mem);
@@ -828,7 +827,7 @@ static void walker(ir_node *proj, void *env)
                                in[i++] = p;
                        }
                        assert(i == n);
-                       sync = new_r_Sync(irg, block, n, in);
+                       sync = new_r_Sync(block, n, in);
                }
                set_memop_mem(mem_op, sync);
        }
@@ -847,3 +846,8 @@ void opt_sync(ir_graph *irg)
        //optimize_graph_df(irg);
        //irg_walk_graph(irg, NormaliseSync, NULL, NULL);
 }
+
+ir_graph_pass_t *opt_sync_pass(const char *name, int verify, int dump)
+{
+       return def_graph_pass(name ? name : "opt_sync", verify, dump, opt_sync);
+}