#ifndef __SCC_IR2MCODE_H__ #define __SCC_IR2MCODE_H__ #include "reg_alloc.h" #include #include #include #include typedef struct { scc_ir_cprog_t *cprog; sccf_builder_t *builder; scc_mcode_t sect_mcode; sccf_sect_data_t sect_data; // FIXME usize stack_size; scc_reg_alloc_t reg_alloc; scc_hashtable_t *noderef2regloc; } scc_ir2mcode_ctx_t; // amd64 void scc_ir2mcode_init(scc_ir2mcode_ctx_t *ctx, scc_ir_cprog_t *cprog, sccf_builder_t *builder, scc_mcode_arch_t arch); void scc_ir2mcode_drop(scc_ir2mcode_ctx_t *ctx); void scc_ir2mcode(scc_ir2mcode_ctx_t *ctx); #endif /* __SCC_IR2MCODE_H__ */