X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fir%2Firprog.c;h=7c588b599d444148e476e5f360ee1689e848f4e7;hb=e1c33a238578342a072e1c95ff12eefe6d0acd37;hp=30cc317d784d4cc7339350f534e21adcb566d147;hpb=9f9273149e9a3aabc0333393db7f5dc07491325b;p=libfirm diff --git a/ir/ir/irprog.c b/ir/ir/irprog.c index 30cc317d7..7c588b599 100644 --- a/ir/ir/irprog.c +++ b/ir/ir/irprog.c @@ -18,12 +18,13 @@ # include #endif -# include "irprog_t.h" -# include "irgraph_t.h" -# include "pseudo_irg.h" -# include "array.h" -# include "obst.h" -# include "typegmod.h" +#include "irprog_t.h" +#include "irgraph_t.h" +#include "pseudo_irg.h" +#include "array.h" +#include "obst.h" +#include "typegmod.h" +#include "irop_t.h" #define GLOBAL_TYPE_NAME "GlobalType" #define INITAL_PROG_NAME "no_name_set" @@ -68,6 +69,7 @@ static ir_prog *complete_ir_prog(ir_prog *irp) { irp->const_code_irg = new_const_code_irg(); + irp->phase_state = phase_building; irp->outs_state = outs_none; irp->ip_outedges = NULL; irp->trouts_state = outs_none; @@ -288,7 +290,15 @@ ir_op *(get_irp_opcode)(int pos) { return _get_irp_opcode(pos); } +/* Sets the generic function pointer of all opcodes to NULL */ +void clear_irp_opcodes_generic_func(void) { + int i; + for (i = get_irp_n_opcodes() - 1; i >= 0; --i) { + ir_op *op = get_irp_opcode(i); + op->ops.generic = (op_func)NULL; + } +} /*- File name / executable name or the like -*/ void set_irp_prog_name(ident *name) {