- ir_type *(*get_between_type)(void *self);
-
- /**
- * Put all registers which are saved by the prologue/epilogue in a set.
- * @param self The callback object.
- * @param regs A set.
- */
- void (*regs_saved_by_me)(void *self, pset *regs);
-
- /**
- * Generate the prologue.
- * @param self The callback object.
- * @param mem A pointer to the mem node. Update this if you define new memory.
- * @param reg_map A mapping mapping all callee_save/ignore/parameter registers to their defining nodes.
- * @return The register which shall be used as a stack frame base.
- *
- * All nodes which define registers in @p reg_map must keep @p reg_map current.
- */
- const arch_register_t *(*prologue)(void *self, ir_node **mem, pmap *reg_map);
-
- /**
- * Generate the epilogue.
- * @param self The callback object.
- * @param mem Memory one can attach to.
- * @param reg_map A mapping mapping all callee_save/ignore/return registers to their defining nodes.
- *
- * All nodes which define registers in @p reg_map must keep @p reg_map current.
- * Also, the @p mem variable must be updated, if memory producing nodes are inserted.
- */
- void (*epilogue)(void *self, ir_node *bl, ir_node **mem, pmap *reg_map);
-
- int (*collect_stack_phis)(void *self);