aboutsummaryrefslogtreecommitdiffstats
path: root/backend/Constpropproof.v
diff options
context:
space:
mode:
authorDavid Monniaux <david.monniaux@univ-grenoble-alpes.fr>2019-09-07 10:11:56 +0200
committerDavid Monniaux <david.monniaux@univ-grenoble-alpes.fr>2019-09-07 10:11:56 +0200
commit046c24d29796a3bb130c94fe464e54e8a7aa2eb3 (patch)
tree1683b2b4933f0f9159435175e5e597a225feac2f /backend/Constpropproof.v
parentf2831013b46d0486e5e134f26fde9ece7b78ff93 (diff)
downloadcompcert-kvx-046c24d29796a3bb130c94fe464e54e8a7aa2eb3.tar.gz
compcert-kvx-046c24d29796a3bb130c94fe464e54e8a7aa2eb3.zip
notrap works on x86
Diffstat (limited to 'backend/Constpropproof.v')
-rw-r--r--backend/Constpropproof.v15
1 files changed, 3 insertions, 12 deletions
diff --git a/backend/Constpropproof.v b/backend/Constpropproof.v
index dca36b4e..2e43a93f 100644
--- a/backend/Constpropproof.v
+++ b/backend/Constpropproof.v
@@ -452,10 +452,8 @@ Proof.
- (* Iload notrap1 *)
rename pc'0 into pc. TransfInstr.
- destruct (eval_static_addressing addr (aregs ae args)) eqn:Hstatic.
- {
- assert (eval_addressing tge (Vptr sp0 Ptrofs.zero) addr rs' ## args = None) as Hnone.
- rewrite eval_addressing_preserved with (ge1 := ge).
+ assert (eval_addressing tge (Vptr sp0 Ptrofs.zero) addr (rs' ## args) = None).
+ rewrite eval_addressing_preserved with (ge1 := ge); eauto.
apply eval_addressing_lessdef_none with (vl1 := rs ## args).
apply regs_lessdef_regs; assumption.
assumption.
@@ -464,14 +462,7 @@ Proof.
left; econstructor; econstructor; split.
eapply exec_Iload_notrap1; eauto.
eapply match_states_succ; eauto. apply set_reg_lessdef; auto.
- }
- { exploit eval_static_addressing_sound; eauto.
- rewrite eval_addressing_preserved with (ge1 := ge).
- apply eval_addressing_lessdef with (vl1 := rs ## args).
- apply regs_lessdef_regs; assumption.
- assumption.
- exact symbols_preserved.
- }
+
- (* Iload notrap2 *)
rename pc'0 into pc. TransfInstr.
assert (exists v2 : val,