aboutsummaryrefslogtreecommitdiffstats
path: root/mppa_k1c/SelectLongproof.v
diff options
context:
space:
mode:
authorDavid Monniaux <david.monniaux@univ-grenoble-alpes.fr>2019-05-02 10:21:09 +0200
committerDavid Monniaux <david.monniaux@univ-grenoble-alpes.fr>2019-05-02 10:21:09 +0200
commitc56f9a47fe1837b7afb73c2c24aed9228bc0db08 (patch)
tree7a54af89b5b284512a4ff116c3c596db669cb1b3 /mppa_k1c/SelectLongproof.v
parent8058d6a89fe0cfda16f685ef5a96793b95cc4156 (diff)
downloadcompcert-kvx-c56f9a47fe1837b7afb73c2c24aed9228bc0db08.tar.gz
compcert-kvx-c56f9a47fe1837b7afb73c2c24aed9228bc0db08.zip
allow disabling + xx global symbols
Diffstat (limited to 'mppa_k1c/SelectLongproof.v')
-rw-r--r--mppa_k1c/SelectLongproof.v8
1 files changed, 5 insertions, 3 deletions
diff --git a/mppa_k1c/SelectLongproof.v b/mppa_k1c/SelectLongproof.v
index cf8eed2b..3b724c01 100644
--- a/mppa_k1c/SelectLongproof.v
+++ b/mppa_k1c/SelectLongproof.v
@@ -127,9 +127,11 @@ Proof.
destruct x; simpl; rewrite ?Int64.add_zero, ?Ptrofs.add_zero; auto.
destruct (addlimm_match a); InvEval.
- econstructor; split. apply eval_longconst. rewrite Int64.add_commut; auto.
-- econstructor; split. EvalOp. simpl; eauto.
- unfold Genv.symbol_address. destruct (Genv.find_symbol ge s); simpl; auto.
- destruct Archi.ptr64; auto. rewrite Ptrofs.add_commut; auto.
+- destruct (Compopts.optim_fglobaladdroffset _).
+ + econstructor; split. EvalOp. simpl; eauto.
+ unfold Genv.symbol_address. destruct (Genv.find_symbol ge s); simpl; auto.
+ destruct Archi.ptr64; auto. rewrite Ptrofs.add_commut; auto.
+ + TrivialExists. repeat econstructor. simpl. trivial.
- econstructor; split. EvalOp. simpl; eauto.
destruct sp; simpl; auto. destruct Archi.ptr64; auto.
rewrite Ptrofs.add_assoc, (Ptrofs.add_commut m0). auto.