+void be_clear_links(ir_graph *irg);
+
+static INLINE FILE *ffopen(const char *base, const char *ext, const char *mode) {
+ FILE *out;
+ char buf[1024];
+
+ snprintf(buf, sizeof(buf), "%s.%s", base, ext);
+ if (! (out = fopen(buf, mode))) {
+ fprintf(stderr, "Cannot open file %s in mode %s\n", buf, mode);
+ return NULL;
+ }
+ return out;
+}
+
+/**
+ * Dump a graph with schedule edges.
+ * @param irg The graph.
+ * @param suffix A suffix to its file name.
+ */
+void dump_ir_block_graph_sched(ir_graph *irg, const char *suffix);
+
+/**
+ * Dump a extended block graph with schedule edges.
+ * @param irg The graph.
+ * @param suffix A suffix to its file name.
+ */
+void dump_ir_extblock_graph_sched(ir_graph *irg, const char *suffix);
+
+/**
+ * Dumps a graph and numbers all dumps.
+ * @param irg The graph
+ * @param suffix A suffix to its file name.
+ * @param dumper The dump function
+ */
+void be_dump(ir_graph *irg, const char *suffix, void (*dumper)(ir_graph *, const char *));
+
+
+#endif /* _BEUTIL_H */
+
+/**
+ * Search for an irn in @p accept.
+ * The search is started at @p start_point_exclusive and continues upwards the dom-tree
+ * @return The first node out of accept if found. Else NULL is returned.
+ */
+ir_node *dom_up_search(pset *accept, ir_node *start_point_exclusive);