Introduce flip-flopping normalisations
[libfirm] / include / libfirm / irconsconfirm.h
index 155d41a..167c733 100644 (file)
@@ -28,6 +28,7 @@
 #define FIRM_ANA_IRCONSCONFIRM_H
 
 #include "firm_types.h"
+#include "begin.h"
 
 /**
  * Inject Confirm nodes into a graph.
  * nodes too. The current solution is to remove Confirms at a later
  * pass.
  */
-void construct_confirms(ir_graph *irg);
+FIRM_API void construct_confirms(ir_graph *irg);
+
+/**
+ * Creates an ir_graph pass for construct_confirms().
+ *
+ * @param name     the name of this pass or NULL
+ *
+ * @return  the newly created ir_graph pass
+ */
+FIRM_API ir_graph_pass_t *construct_confirms_pass(const char *name);
 
 /**
  * Remove all Confirm nodes from a graph.
@@ -57,6 +67,17 @@ void construct_confirms(ir_graph *irg);
  * Note that local_optimize() can handle this if
  * the remove Confirm node setting is on (set_opt_remove_Confirm(1)).
  */
-void remove_confirms(ir_graph *irg);
+FIRM_API void remove_confirms(ir_graph *irg);
+
+/**
+ * Creates an ir_graph pass for remove_confirms().
+ *
+ * @param name     the name of this pass or NULL
+ *
+ * @return  the newly created ir_graph pass
+ */
+FIRM_API ir_graph_pass_t *remove_confirms_pass(const char *name);
+
+#include "end.h"
 
 #endif