From 7bc6519d4f72f2b7f6cd26f177dec12e35a4b47f Mon Sep 17 00:00:00 2001 From: David Monniaux Date: Thu, 12 Mar 2020 23:38:54 +0100 Subject: proof sketch for CSE3 steps --- backend/CSE3.v | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'backend/CSE3.v') diff --git a/backend/CSE3.v b/backend/CSE3.v index f8a25515..161a394a 100644 --- a/backend/CSE3.v +++ b/backend/CSE3.v @@ -32,7 +32,14 @@ Definition forward_move_b (rb : RB.t) (x : reg) := Definition subst_arg (fmap : PMap.t RB.t) (pc : node) (x : reg) : reg := forward_move_b (PMap.get pc fmap) x. -Definition subst_args fmap pc := List.map (subst_arg fmap pc). +Definition forward_move_l_b (rb : RB.t) (xl : list reg) := + match rb with + | None => xl + | Some rel => forward_move_l (ctx := ctx) rel xl + end. + +Definition subst_args fmap pc xl := + forward_move_l_b (PMap.get pc fmap) xl. Definition transf_instr (fmap : PMap.t RB.t) (pc: node) (instr: instruction) := -- cgit