diff options
author | David Monniaux <david.monniaux@univ-grenoble-alpes.fr> | 2019-04-04 16:27:52 +0200 |
---|---|---|
committer | David Monniaux <david.monniaux@univ-grenoble-alpes.fr> | 2019-04-04 16:27:52 +0200 |
commit | 7171888446d3d4b47765cc21d982eb2045cd00cd (patch) | |
tree | bc3d7c2141ee4e6ff8d92104a035aa8368e580c7 /mppa_k1c/SelectOpproof.v | |
parent | b7ded97f34c5f0c670f43f2b15e77eb8874a764e (diff) | |
download | compcert-kvx-7171888446d3d4b47765cc21d982eb2045cd00cd.tar.gz compcert-kvx-7171888446d3d4b47765cc21d982eb2045cd00cd.zip |
some more progress on select
Diffstat (limited to 'mppa_k1c/SelectOpproof.v')
-rw-r--r-- | mppa_k1c/SelectOpproof.v | 53 |
1 files changed, 27 insertions, 26 deletions
diff --git a/mppa_k1c/SelectOpproof.v b/mppa_k1c/SelectOpproof.v index 20ba74a1..4af5ccfa 100644 --- a/mppa_k1c/SelectOpproof.v +++ b/mppa_k1c/SelectOpproof.v @@ -582,22 +582,22 @@ Proof. inv H2. inv H5. replace v8 with v4 in * by congruence. rename v4 into vselect. - destruct vselect; simpl; trivial. - rewrite (Val.and_commut _ v5). - destruct v5; simpl; trivial. - rewrite (Val.and_commut _ v9). - rewrite Val.or_commut. - destruct v9; simpl; trivial. - rewrite int_eq_commut. - destruct (Int.eq i1 Int.zero); simpl. - + rewrite Int.and_zero. - rewrite Int.or_commut. - rewrite Int.or_zero. + destruct vselect; simpl; trivial; + destruct v5; simpl; trivial; destruct v9; simpl; trivial; + destruct (Int.eq i1 Int.zero); simpl; trivial. + + rewrite Int.neg_zero. + rewrite Int.and_commut. rewrite Int.and_mone. + rewrite Int.and_commut. + rewrite Int.and_zero. + rewrite Int.or_zero. reflexivity. - + rewrite Int.and_mone. - rewrite Int.neg_zero. + + rewrite Int.neg_zero. + rewrite Int.and_commut. rewrite Int.and_zero. + rewrite Int.and_commut. + rewrite Int.and_mone. + rewrite Int.or_commut. rewrite Int.or_zero. reflexivity. - (* select unsigned *) @@ -620,22 +620,23 @@ Proof. inv H2. inv H5. replace v8 with v4 in * by congruence. rename v4 into vselect. - destruct vselect; simpl; trivial. - rewrite (Val.and_commut _ v5). - destruct v5; simpl; trivial. - rewrite (Val.and_commut _ v9). - rewrite Val.or_commut. - destruct v9; simpl; trivial. - rewrite int_eq_commut. - destruct (Int.eq i1 Int.zero); simpl. - + rewrite Int.and_zero. - rewrite Int.or_commut. - rewrite Int.or_zero. + destruct vselect; simpl; trivial; + destruct v5; simpl; trivial; + destruct v9; simpl; trivial; + destruct (Int.eq i1 Int.zero); simpl; trivial. + + rewrite Int.neg_zero. + rewrite Int.and_commut. rewrite Int.and_mone. + rewrite Int.and_commut. + rewrite Int.and_zero. + rewrite Int.or_zero. reflexivity. - + rewrite Int.and_mone. - rewrite Int.neg_zero. + + rewrite Int.neg_zero. + rewrite Int.and_commut. rewrite Int.and_zero. + rewrite Int.and_commut. + rewrite Int.and_mone. + rewrite Int.or_commut. rewrite Int.or_zero. reflexivity. - apply DEFAULT. |