diff options
| -rw-r--r-- | liveness.c | 30 |
1 files changed, 15 insertions, 15 deletions
@@ -13,7 +13,7 @@ #include "flow.h" static void phi_defines(struct instruction * phi_node, pseudo_t target, - void (*defines)(struct basic_block *, struct instruction *, pseudo_t)) + void (*defines)(struct basic_block *, pseudo_t)) { pseudo_t phi; FOR_EACH_PTR(phi_node->phi_list, phi) { @@ -23,33 +23,33 @@ static void phi_defines(struct instruction * phi_node, pseudo_t target, def = phi->def; if (!def || !def->bb) continue; - defines(def->bb, phi->def, target); + defines(def->bb, target); } END_FOR_EACH_PTR(phi); } static void asm_liveness(struct basic_block *bb, struct instruction *insn, - void (*def)(struct basic_block *, struct instruction *, pseudo_t), - void (*use)(struct basic_block *, struct instruction *, pseudo_t)) + void (*def)(struct basic_block *, pseudo_t), + void (*use)(struct basic_block *, pseudo_t)) { struct asm_constraint *entry; FOR_EACH_PTR(insn->asm_rules->inputs, entry) { - use(bb, insn, entry->pseudo); + use(bb, entry->pseudo); } END_FOR_EACH_PTR(entry); FOR_EACH_PTR(insn->asm_rules->outputs, entry) { - def(bb, insn, entry->pseudo); + def(bb, entry->pseudo); } END_FOR_EACH_PTR(entry); } static void track_instruction_usage(struct basic_block *bb, struct instruction *insn, - void (*def)(struct basic_block *, struct instruction *, pseudo_t), - void (*use)(struct basic_block *, struct instruction *, pseudo_t)) + void (*def)(struct basic_block *, pseudo_t), + void (*use)(struct basic_block *, pseudo_t)) { pseudo_t pseudo; - #define USES(x) use(bb, insn, insn->x) - #define DEFINES(x) def(bb, insn, insn->x) + #define USES(x) use(bb, insn->x) + #define DEFINES(x) def(bb, insn->x) switch (insn->opcode) { case OP_RET: @@ -122,7 +122,7 @@ static void track_instruction_usage(struct basic_block *bb, struct instruction * if (insn->target != VOID) DEFINES(target); FOR_EACH_PTR(insn->arguments, pseudo) { - use(bb, insn, pseudo); + use(bb, pseudo); } END_FOR_EACH_PTR(pseudo); break; @@ -180,7 +180,7 @@ static inline int trackable_pseudo(pseudo_t pseudo) return pseudo && (pseudo->type == PSEUDO_REG || pseudo->type == PSEUDO_ARG); } -static void insn_uses(struct basic_block *bb, struct instruction *insn, pseudo_t pseudo) +static void insn_uses(struct basic_block *bb, pseudo_t pseudo) { if (trackable_pseudo(pseudo)) { struct instruction *def = pseudo->def; @@ -189,7 +189,7 @@ static void insn_uses(struct basic_block *bb, struct instruction *insn, pseudo_t } } -static void insn_defines(struct basic_block *bb, struct instruction *insn, pseudo_t pseudo) +static void insn_defines(struct basic_block *bb, pseudo_t pseudo) { assert(trackable_pseudo(pseudo)); add_pseudo(&bb->defines, pseudo); @@ -300,11 +300,11 @@ static void track_bb_phi_uses(struct basic_block *bb) static struct pseudo_list **live_list; static struct pseudo_list *dead_list; -static void death_def(struct basic_block *bb, struct instruction *insn, pseudo_t pseudo) +static void death_def(struct basic_block *bb, pseudo_t pseudo) { } -static void death_use(struct basic_block *bb, struct instruction *insn, pseudo_t pseudo) +static void death_use(struct basic_block *bb, pseudo_t pseudo) { if (trackable_pseudo(pseudo) && !pseudo_in_list(*live_list, pseudo)) { add_pseudo(&dead_list, pseudo); |
