aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorLuc Van Oostenryck <luc.vanoostenryck@gmail.com>2021-03-21 15:40:57 +0100
committerLuc Van Oostenryck <luc.vanoostenryck@gmail.com>2021-03-21 16:08:19 +0100
commit190172adee54045651babb4a9ae79d7cb4c1b1ac (patch)
tree70218253b74a10d00c48122ab81927a6832401ba
parent4c6929edf09a9d751b22531d899f6b10a7af0106 (diff)
downloadsparse-190172adee54045651babb4a9ae79d7cb4c1b1ac.tar.gz
let ssa_rename_phi() use insert_last_instruction()
Signed-off-by: Luc Van Oostenryck <luc.vanoostenryck@gmail.com>
-rw-r--r--ssa.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/ssa.c b/ssa.c
index b9044207..5f1a52b8 100644
--- a/ssa.c
+++ b/ssa.c
@@ -345,11 +345,11 @@ static void ssa_rename_phi(struct instruction *insn)
if (!var->torename)
return;
FOR_EACH_PTR(insn->bb->parents, par) {
- struct instruction *term = delete_last_instruction(&par->insns);
pseudo_t val = lookup_var(par, var);
- pseudo_t phi = alloc_phi(par, val, var);
+ struct instruction *phisrc = alloc_phisrc(val, var);
+ pseudo_t phi = phisrc->target;
phi->ident = var->ident;
- add_instruction(&par->insns, term);
+ insert_last_instruction(par, phisrc);
link_phi(insn, phi);
mark_phi_used(val);
} END_FOR_EACH_PTR(par);