diff options
Diffstat (limited to 'riscV/Asmgenproof1.v')
-rw-r--r-- | riscV/Asmgenproof1.v | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/riscV/Asmgenproof1.v b/riscV/Asmgenproof1.v index 35c5b9d6..a826455e 100644 --- a/riscV/Asmgenproof1.v +++ b/riscV/Asmgenproof1.v @@ -1258,10 +1258,11 @@ Opaque Int.eq. { exploit transl_cond_op_correct; eauto. intros (rs' & A & B & C). exists rs'; split. eexact A. eauto with asmgen. } (* Expanded instructions from RTL *) - 7: econstructor; split; try apply exec_straight_one; simpl; eauto; - split; intros; Simpl; rewrite Int.add_commut; auto. - 13: econstructor; split; try apply exec_straight_one; simpl; eauto; - split; intros; Simpl; rewrite Int64.add_commut; auto. + 7,8,15,16: + econstructor; split; try apply exec_straight_one; simpl; eauto; + split; intros; Simpl; unfold may_undef_int; try destruct is_long; simpl; + try rewrite Int.add_commut; try rewrite Int64.add_commut; + destruct (rs (preg_of m0)); try discriminate; eauto. all: destruct optR0 as [[]|]; unfold apply_bin_r0_r0r0, apply_bin_r0; econstructor; split; try apply exec_straight_one; simpl; eauto; split; intros; Simpl. |