X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fir%2Firpass_t.h;h=bd3315d622586f29565cea7f652c0dedaf15872f;hb=eb47aca33f2f8c414409f3695e73277b47442334;hp=9b6ba068d0189ec6e2765df733e5c2f59ce9599b;hpb=d92c40358495a9da07dcb03c9ad418bf460825b0;p=libfirm diff --git a/ir/ir/irpass_t.h b/ir/ir/irpass_t.h index 9b6ba068d..bd3315d62 100644 --- a/ir/ir/irpass_t.h +++ b/ir/ir/irpass_t.h @@ -23,7 +23,7 @@ * @file * @brief Manager for optimization passes. Private Header * @author Michael Beck - * @version $Id: $ + * @version $Id$ */ #include "firm_types.h" #include "firm_common.h" @@ -56,7 +56,7 @@ typedef void (*DUMP_ON_IRPROG_FUNC)(ir_prog *irg, void *ctx, unsigned idx); typedef void (*INIT_TERM_FUNC)(void *ctx); /** - * A graph pass. + * An ir_sgraph pass. */ struct ir_graph_pass_t { /** The firm kind. */ @@ -80,12 +80,11 @@ struct ir_graph_pass_t { /** 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. */ @@ -109,13 +108,11 @@ struct ir_prog_pass_t { /** 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. */ @@ -128,7 +125,7 @@ struct ir_graph_pass_manager_t { }; /** - * A irprog pass manager. + * An ir_prog pass manager. */ struct ir_prog_pass_manager_t { firm_kind kind; /**< The firm kind. */ @@ -140,4 +137,14 @@ struct ir_prog_pass_manager_t { 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