aboutsummaryrefslogtreecommitdiffstats
path: root/arm/Asmgenproof.v
diff options
context:
space:
mode:
Diffstat (limited to 'arm/Asmgenproof.v')
-rw-r--r--arm/Asmgenproof.v9
1 files changed, 6 insertions, 3 deletions
diff --git a/arm/Asmgenproof.v b/arm/Asmgenproof.v
index c687722c..6d9b134f 100644
--- a/arm/Asmgenproof.v
+++ b/arm/Asmgenproof.v
@@ -771,13 +771,16 @@ Opaque loadind.
inv AT. monadInv H4.
exploit functions_transl; eauto. intro FN.
generalize (transf_function_no_overflow _ _ H3); intro NOOV.
- exploit annot_arguments_match; eauto. intros [vargs' [P Q]].
- exploit external_call_mem_extends'; eauto.
+ exploit annot_args_match; eauto. intros [vargs' [P Q]].
+ exploit external_call_mem_extends; eauto.
intros [vres' [m2' [A [B [C D]]]]].
left. econstructor; split. apply plus_one.
eapply exec_step_annot. eauto. eauto.
eapply find_instr_tail; eauto. eauto.
- eapply external_call_symbols_preserved'; eauto.
+ erewrite <- sp_val by eauto.
+ eapply eval_annot_args_preserved with (ge1 := ge); eauto.
+ exact symbols_preserved.
+ eapply external_call_symbols_preserved; eauto.
exact symbols_preserved. exact public_preserved. exact varinfo_preserved.
eapply match_states_intro with (ep := false); eauto with coqlib.
unfold nextinstr. rewrite Pregmap.gss.