*/
static void amd64_prepare_graph(ir_graph *irg)
{
- amd64_irg_data_t *irg_data = amd64_get_irg_data(irg);
amd64_transform_graph(irg);
- if (irg_data->dump)
+ if (be_options.dump_flags & DUMP_BE)
dump_ir_graph(irg, "transformed");
}
be_abi_fix_stack_bias(irg);
}
-/**
- * Initializes the code generator.
- */
-static void amd64_init_graph(ir_graph *irg)
-{
- struct obstack *obst = be_get_be_obst(irg);
- amd64_irg_data_t *irg_data = OALLOCZ(obst, amd64_irg_data_t);
- irg_data->dump = (be_options.dump_flags & DUMP_BE) ? 1 : 0;
-
- be_birg_from_irg(irg)->isa_link = irg_data;
-}
-
extern const arch_isa_if_t amd64_isa_if;
static amd64_isa_t amd64_isa_template = {
{
amd64_begin_codegeneration,
amd64_end_codegeneration,
- amd64_init_graph,
+ NULL,
amd64_get_call_abi,
NULL, /* mark remat */
NULL, /* get_pic_base */
typedef struct amd64_isa_t amd64_isa_t;
-typedef struct amd64_irg_data_t {
- ir_graph *irg; /**< current irg */
- amd64_isa_t *isa; /**< the isa instance */
- char dump; /**< set to 1 if graphs should be dumped */
- ir_node *noreg_gp; /**< unique NoReg_GP node */
-} amd64_irg_data_t;
-
struct amd64_isa_t {
arch_env_t base; /**< must be derived from arch_isa */
};
-static inline amd64_irg_data_t *amd64_get_irg_data(const ir_graph *irg)
-{
- return (amd64_irg_data_t*) be_birg_from_irg(irg)->isa_link;
-}
-
ir_node *amd64_new_NoReg_gp(ir_graph *irg);
#endif