diff options
Diffstat (limited to 'kvx/SelectLongproof.v')
-rw-r--r-- | kvx/SelectLongproof.v | 28 |
1 files changed, 14 insertions, 14 deletions
diff --git a/kvx/SelectLongproof.v b/kvx/SelectLongproof.v index c3abdbc7..ca32d69a 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,20 @@ Qed. Theorem eval_singleoflong: partial_unary_constructor_sound singleoflong Val.singleoflong. Proof. - unfold singleoflong; red; intros. (* destruct Archi.splitlong eqn:SL. *) - eapply SplitLongproof.eval_singleoflong; eauto. -(* TrivialExists. *) + unfold singleoflong; red; intros. + destruct use_inlined_fp_conversions. + - econstructor. split. apply FPExtra.e_single_of_long_correct. + eassumption. rewrite H0. cbn. constructor. + - eapply SplitLongproof.eval_singleoflong; eauto. 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. |