diff options
author | Xavier Leroy <xavier.leroy@college-de-france.fr> | 2020-12-06 16:47:19 +0100 |
---|---|---|
committer | Xavier Leroy <xavier.leroy@college-de-france.fr> | 2020-12-06 16:47:19 +0100 |
commit | 5e3898945c063801d4a93f44182d160ccfe4badc (patch) | |
tree | ba0b2d7ebba9e98e067e24ad8708dccb3441b20b /powerpc/Asmgenproof.v | |
parent | a4cfb9c2ffdef07fa0d478e66f279687c9823d42 (diff) | |
download | compcert-kvx-5e3898945c063801d4a93f44182d160ccfe4badc.tar.gz compcert-kvx-5e3898945c063801d4a93f44182d160ccfe4badc.zip |
PowerPC modeling of registers destroyed by pseudo-instructions
Inlined built-in functions destroy GPR0
Diffstat (limited to 'powerpc/Asmgenproof.v')
-rw-r--r-- | powerpc/Asmgenproof.v | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/powerpc/Asmgenproof.v b/powerpc/Asmgenproof.v index d653633c..a1ae5855 100644 --- a/powerpc/Asmgenproof.v +++ b/powerpc/Asmgenproof.v @@ -781,16 +781,18 @@ Opaque loadind. econstructor; eauto. instantiate (2 := tf); instantiate (1 := x). unfold nextinstr. rewrite Pregmap.gss. - rewrite set_res_other. rewrite undef_regs_other_2. + rewrite set_res_other. simpl. rewrite undef_regs_other_2. + rewrite Pregmap.gso by auto with asmgen. rewrite <- H1. simpl. econstructor; eauto. eapply code_tail_next_int; eauto. rewrite preg_notin_charact. intros. auto with asmgen. auto with asmgen. apply agree_nextinstr. eapply agree_set_res; auto. - eapply agree_undef_regs; eauto. intros; apply undef_regs_other_2; auto. + eapply agree_undef_regs; eauto. + intros. simpl. rewrite undef_regs_other_2; auto. apply Pregmap.gso. auto with asmgen. congruence. intros. Simpl. rewrite set_res_other by auto. - rewrite undef_regs_other_2; auto with asmgen. + simpl. rewrite undef_regs_other_2; auto with asmgen. - (* Mgoto *) assert (f0 = f) by congruence. subst f0. |