* @file
* @brief Manager for optimization passes. Private Header
* @author Michael Beck
- * @version $Id: $
+ * @version $Id$
*/
#include "firm_types.h"
#include "firm_common.h"
typedef void (*INIT_TERM_FUNC)(void *ctx);
/**
- * A graph pass.
+ * An ir_sgraph pass.
*/
struct ir_graph_pass_t {
/** The firm kind. */
/** Links all passes. */
list_head list;
- unsigned verify:1; /**< Set if this pass should be verified. */
- unsigned dump:1; /**< Set if this pass should be dumped. */
+ unsigned run_parallel:1; /**< if set this pass can run parallel on all graphs. */
};
/**
- * A irprog pass.
+ * An ir_prog pass.
*/
struct ir_prog_pass_t {
/** The firm kind. */
/** Links all passes */
list_head list;
- unsigned verify:1; /**< Set if this pass should be verified. */
- unsigned dump:1; /**< Set if this pass should be dumped. */
unsigned is_wrapper:1; /**< set if this is a wrapper pass. */
};
/**
- * A graph pass manager.
+ * An ir_graph pass manager.
*/
struct ir_graph_pass_manager_t {
firm_kind kind; /**< The firm kind. */
};
/**
- * A irprog pass manager.
+ * An ir_prog pass manager.
*/
struct ir_prog_pass_manager_t {
firm_kind kind; /**< The firm kind. */
unsigned dump_all:1; /**< Set if every pass should be dumped. */
};
+/**
+ * Ensure that no verifier is run an ir_prog pass.
+ */
+int ir_prog_no_verify(ir_prog *prog, void *ctx);
+
+/**
+ * Ensure that no dumper is run from an ir_prog pass.
+ */
+void ir_prog_no_dump(ir_prog *prog, void *ctx, unsigned idx);
+
#endif