aboutsummaryrefslogtreecommitdiffstats
path: root/mppa_k1c/SelectOpproof.v
diff options
context:
space:
mode:
authorDavid Monniaux <david.monniaux@univ-grenoble-alpes.fr>2019-04-29 14:02:17 +0200
committerDavid Monniaux <david.monniaux@univ-grenoble-alpes.fr>2019-04-29 14:02:17 +0200
commit76a75a7fa3d4f8a81868a00af99c449f1ce519b9 (patch)
tree5b3ceb0d52c29d2067370ca024e2f83266568d56 /mppa_k1c/SelectOpproof.v
parent9d8fcdd62607141814089bfa407d3dae63afa0b6 (diff)
downloadcompcert-kvx-76a75a7fa3d4f8a81868a00af99c449f1ce519b9.tar.gz
compcert-kvx-76a75a7fa3d4f8a81868a00af99c449f1ce519b9.zip
float of intu = float of longu o longu of intu
Diffstat (limited to 'mppa_k1c/SelectOpproof.v')
-rw-r--r--mppa_k1c/SelectOpproof.v20
1 files changed, 17 insertions, 3 deletions
diff --git a/mppa_k1c/SelectOpproof.v b/mppa_k1c/SelectOpproof.v
index c94f9c0c..e07bc51c 100644
--- a/mppa_k1c/SelectOpproof.v
+++ b/mppa_k1c/SelectOpproof.v
@@ -1155,9 +1155,23 @@ Theorem eval_floatofintu:
Val.floatofintu x = Some y ->
exists v, eval_expr ge sp e m le (floatofintu a) v /\ Val.lessdef y v.
Proof.
- intros until y; unfold floatofintu. case (floatofintu_match a); intros.
- InvEval. simpl in H0. TrivialExists.
- TrivialExists.
+ intros.
+ unfold Val.floatofintu in *.
+ unfold floatofintu.
+ destruct (floatofintu_match a).
+ - InvEval.
+ TrivialExists.
+ - InvEval.
+ TrivialExists.
+ constructor. econstructor. constructor. eassumption. constructor.
+ simpl. f_equal. constructor.
+ simpl.
+ destruct x; simpl; trivial.
+ f_equal.
+ inv H0.
+ f_equal.
+ rewrite Float.of_intu_of_longu.
+ reflexivity.
Qed.
Theorem eval_floatofint: