summaryrefslogtreecommitdiff
path: root/backend/Tailcallproof.v
diff options
context:
space:
mode:
Diffstat (limited to 'backend/Tailcallproof.v')
-rw-r--r--backend/Tailcallproof.v7
1 files changed, 6 insertions, 1 deletions
diff --git a/backend/Tailcallproof.v b/backend/Tailcallproof.v
index 0535cbf..2eed6e8 100644
--- a/backend/Tailcallproof.v
+++ b/backend/Tailcallproof.v
@@ -240,6 +240,10 @@ Lemma symbols_preserved:
forall (s: ident), Genv.find_symbol tge s = Genv.find_symbol ge s.
Proof (Genv.find_symbol_transf transf_fundef prog).
+Lemma varinfo_preserved:
+ forall b, Genv.find_var_info tge b = Genv.find_var_info ge b.
+Proof (Genv.find_var_info_transf transf_fundef prog).
+
Lemma functions_translated:
forall (v: val) (f: RTL.fundef),
Genv.find_funct ge v = Some f ->
@@ -557,7 +561,8 @@ Proof.
intros [res' [m2' [A [B [C D]]]]].
left. exists (Returnstate s' res' m2'); split.
simpl. econstructor; eauto.
- eapply external_call_symbols_preserved; eauto. exact symbols_preserved.
+ eapply external_call_symbols_preserved; eauto.
+ exact symbols_preserved. exact varinfo_preserved.
constructor; auto.
(* returnstate *)