diff options
Diffstat (limited to 'backend/Selectionproof.v')
-rw-r--r-- | backend/Selectionproof.v | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/backend/Selectionproof.v b/backend/Selectionproof.v index 54d59b1c..9681c66b 100644 --- a/backend/Selectionproof.v +++ b/backend/Selectionproof.v @@ -212,6 +212,7 @@ Proof. apply eval_cast8signed; auto. apply eval_cast16unsigned; auto. apply eval_cast16signed; auto. + apply eval_boolval; auto. apply eval_negint; auto. apply eval_notbool; auto. apply eval_notint; auto. @@ -619,6 +620,15 @@ Proof. eapply functions_translated; eauto. apply sig_function_translated. constructor; auto. apply call_cont_commut; auto. + (* Sbuiltin *) + exploit sel_exprlist_correct; eauto. intros [vargs' [P Q]]. + exploit external_call_mem_extends; eauto. + intros [vres' [m2 [A [B [C D]]]]]. + left; econstructor; split. + econstructor. eauto. eapply external_call_symbols_preserved; eauto. + exact symbols_preserved. exact varinfo_preserved. + constructor; auto. + destruct optid; simpl; auto. apply set_var_lessdef; auto. (* Seq *) left; econstructor; split. constructor. constructor; auto. constructor; auto. (* Sifthenelse *) |