X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fbe%2FTEMPLATE%2FTEMPLATE_emitter.c;h=3fe41fa7c702d505255ed7b7e87b2fe0d67e7344;hb=97927c8e372f337e8342b698072facf4ffa453ad;hp=29544ce6063b8a6abac7f6b0256fdafaab1721a2;hpb=ea64ddabccc512b21b425e4d89fda5e4ffe124a6;p=libfirm diff --git a/ir/be/TEMPLATE/TEMPLATE_emitter.c b/ir/be/TEMPLATE/TEMPLATE_emitter.c index 29544ce60..3fe41fa7c 100644 --- a/ir/be/TEMPLATE/TEMPLATE_emitter.c +++ b/ir/be/TEMPLATE/TEMPLATE_emitter.c @@ -15,6 +15,7 @@ #include "irprintf.h" #include "irop_t.h" #include "irargs_t.h" +#include "irprog.h" #include "../besched.h" @@ -296,10 +297,10 @@ static void TEMPLATE_register_emitters(void) { * Emits code for a node. */ void TEMPLATE_emit_node(ir_node *irn, void *env) { - emit_env_t *emit_env = env; - FILE *F = emit_env->out; - ir_op *op = get_irn_op(irn); - DEBUG_ONLY(firm_dbg_module_t *mod = emit_env->mod;) + TEMPLATE_emit_env_t *emit_env = env; + FILE *F = emit_env->out; + ir_op *op = get_irn_op(irn); + DEBUG_ONLY(firm_dbg_module_t *mod = emit_env->mod;) DBG((mod, LEVEL_1, "emitting code for %+F\n", irn)); @@ -317,12 +318,13 @@ void TEMPLATE_emit_node(ir_node *irn, void *env) { * and emits code for each node. */ void TEMPLATE_gen_block(ir_node *block, void *env) { + TEMPLATE_emit_env_t *emit_env = env; ir_node *irn; if (! is_Block(block)) return; - fprintf(((emit_env_t *)env)->out, "BLOCK_%ld:\n", get_irn_node_nr(block)); + fprintf(emit_env->out, "BLOCK_%ld:\n", get_irn_node_nr(block)); sched_foreach(block, irn) { TEMPLATE_emit_node(irn, env); } @@ -365,7 +367,7 @@ void TEMPLATE_gen_labels(ir_node *block, void *env) { * Main driver */ void TEMPLATE_gen_routine(FILE *F, ir_graph *irg, const TEMPLATE_code_gen_t *cg) { - emit_env_t emit_env; + TEMPLATE_emit_env_t emit_env; emit_env.out = F; emit_env.arch_env = cg->arch_env;