diff options
author | xleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e> | 2014-04-09 13:26:16 +0000 |
---|---|---|
committer | xleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e> | 2014-04-09 13:26:16 +0000 |
commit | 336a1f906a9c617e68e9d43e244bf42e9bdbae64 (patch) | |
tree | 47c65aa1aa9c9eadbd98ec0e443ad0105bb0b268 /ia32/SelectOpproof.v | |
parent | 76f49ca6af4ffbc77c0ba7965d409c3de04011bd (diff) |
Constprop: use "not" for "xorimm(-1)"; optimize == 1 and != 0 comparisons over booleans.
Select*: more systematic constant propagation; don't CP shifts by amounts outside of [0..31].
Driver: timer for whole compilation.
git-svn-id: https://yquem.inria.fr/compcert/svn/compcert/trunk@2452 fca1b0fc-160b-0410-b1d3-a4f43f01ea2e
Diffstat (limited to 'ia32/SelectOpproof.v')
-rw-r--r-- | ia32/SelectOpproof.v | 12 |
1 files changed, 0 insertions, 12 deletions
diff --git a/ia32/SelectOpproof.v b/ia32/SelectOpproof.v index 30e8c5b..16879c0 100644 --- a/ia32/SelectOpproof.v +++ b/ia32/SelectOpproof.v @@ -565,18 +565,6 @@ Proof. red; intros; TrivialExists. Qed. -Theorem eval_divf: binary_constructor_sound divf Val.divf. -Proof. - red. intros until y. unfold divf. destruct (divf_match b); intros. -- unfold divfimm. destruct (Float.exact_inverse n2) as [n2' | ] eqn:EINV. - + inv H0. inv H4. simpl in H6. inv H6. econstructor; split. - EvalOp. constructor. eauto. constructor. EvalOp. simpl; eauto. constructor. - simpl; eauto. - destruct x; simpl; auto. erewrite Float.div_mul_inverse; eauto. - + TrivialExists. -- TrivialExists. -Qed. - Section COMP_IMM. Variable default: comparison -> int -> condition. |