aboutsummaryrefslogtreecommitdiffstats
path: root/mppa_k1c/SelectOpproof.v
diff options
context:
space:
mode:
authorDavid Monniaux <david.monniaux@univ-grenoble-alpes.fr>2019-03-16 16:48:54 +0100
committerDavid Monniaux <david.monniaux@univ-grenoble-alpes.fr>2019-03-16 16:48:54 +0100
commit33648f1fbee9442190bb85fae1192b7b119daf81 (patch)
tree022bee87ee69ecf113ee3ce9c221645ce70d7dc2 /mppa_k1c/SelectOpproof.v
parent0d66eae95a8905ff985cd4738808fc93215a4904 (diff)
downloadcompcert-kvx-33648f1fbee9442190bb85fae1192b7b119daf81.tar.gz
compcert-kvx-33648f1fbee9442190bb85fae1192b7b119daf81.zip
some more nand
Diffstat (limited to 'mppa_k1c/SelectOpproof.v')
-rw-r--r--mppa_k1c/SelectOpproof.v7
1 files changed, 6 insertions, 1 deletions
diff --git a/mppa_k1c/SelectOpproof.v b/mppa_k1c/SelectOpproof.v
index c5f05dcf..c14a622a 100644
--- a/mppa_k1c/SelectOpproof.v
+++ b/mppa_k1c/SelectOpproof.v
@@ -524,7 +524,12 @@ Qed.
Theorem eval_notint: unary_constructor_sound notint Val.notint.
Proof.
- unfold notint; red; intros. rewrite Val.not_xor. apply eval_xorimm; auto.
+ assert (forall v, Val.lessdef (Val.notint (Val.notint v)) v).
+ destruct v; simpl; auto. rewrite Int.not_involutive; auto.
+ unfold notint; red; intros until x; case (notint_match a); intros; InvEval.
+ - TrivialExists; simpl; congruence.
+ - TrivialExists; simpl; congruence.
+ - apply eval_xorimm; assumption.
Qed.
Theorem eval_divs_base: