aboutsummaryrefslogtreecommitdiffstats
path: root/kvx/SelectLongproof.v
diff options
context:
space:
mode:
authorDavid Monniaux <David.Monniaux@univ-grenoble-alpes.fr>2022-02-12 13:15:31 +0100
committerDavid Monniaux <David.Monniaux@univ-grenoble-alpes.fr>2022-02-12 13:15:31 +0100
commit882f1a1875089298937abf4ef854b221cab4eb8e (patch)
treef452845baaf8ff59fff813dd48eac05f8d4990b5 /kvx/SelectLongproof.v
parent98a115dece106f5036452b0c0bac04ad4a6e047e (diff)
parent337c490d12c437dcbb5941e204ec1b1c4efa992b (diff)
downloadcompcert-kvx-882f1a1875089298937abf4ef854b221cab4eb8e.tar.gz
compcert-kvx-882f1a1875089298937abf4ef854b221cab4eb8e.zip
Merge remote-tracking branch 'origin/kvx-work' into kvx_fp_division
Diffstat (limited to 'kvx/SelectLongproof.v')
-rw-r--r--kvx/SelectLongproof.v23
1 files changed, 10 insertions, 13 deletions
diff --git a/kvx/SelectLongproof.v b/kvx/SelectLongproof.v
index c3abdbc7..b858158b 100644
--- a/kvx/SelectLongproof.v
+++ b/kvx/SelectLongproof.v
@@ -884,32 +884,28 @@ Qed.
Theorem eval_longoffloat: partial_unary_constructor_sound longoffloat Val.longoffloat.
Proof.
- unfold longoffloat; red; intros. destruct Archi.splitlong eqn:SL.
- eapply SplitLongproof.eval_longoffloat; eauto.
+ unfold longoffloat; red; intros.
TrivialExists.
simpl. rewrite H0. reflexivity.
Qed.
Theorem eval_longuoffloat: partial_unary_constructor_sound longuoffloat Val.longuoffloat.
Proof.
- unfold longuoffloat; red; intros. destruct Archi.splitlong eqn:SL.
- eapply SplitLongproof.eval_longuoffloat; eauto.
+ unfold longuoffloat; red; intros.
TrivialExists.
simpl. rewrite H0. reflexivity.
Qed.
Theorem eval_floatoflong: partial_unary_constructor_sound floatoflong Val.floatoflong.
Proof.
- unfold floatoflong; red; intros. destruct Archi.splitlong eqn:SL.
- eapply SplitLongproof.eval_floatoflong; eauto.
+ unfold floatoflong; red; intros.
TrivialExists.
simpl. rewrite H0. reflexivity.
Qed.
Theorem eval_floatoflongu: partial_unary_constructor_sound floatoflongu Val.floatoflongu.
Proof.
- unfold floatoflongu; red; intros. destruct Archi.splitlong eqn:SL.
- eapply SplitLongproof.eval_floatoflongu; eauto.
+ unfold floatoflongu; red; intros.
TrivialExists.
simpl. rewrite H0. reflexivity.
Qed.
@@ -936,16 +932,17 @@ Qed.
Theorem eval_singleoflong: partial_unary_constructor_sound singleoflong Val.singleoflong.
Proof.
- unfold singleoflong; red; intros. (* destruct Archi.splitlong eqn:SL. *)
+ unfold singleoflong; red; intros.
eapply SplitLongproof.eval_singleoflong; eauto.
-(* TrivialExists. *)
Qed.
Theorem eval_singleoflongu: partial_unary_constructor_sound singleoflongu Val.singleoflongu.
Proof.
- unfold singleoflongu; red; intros. (* destruct Archi.splitlong eqn:SL. *)
- eapply SplitLongproof.eval_singleoflongu; eauto.
-(* TrivialExists. *)
+ unfold singleoflongu; red; intros.
+ destruct use_inlined_fp_conversions.
+ - econstructor. split. apply FPExtra.e_single_of_longu_correct.
+ eassumption. rewrite H0. cbn. constructor.
+ - eapply SplitLongproof.eval_singleoflongu; eauto.
Qed.
End CMCONSTR.