aboutsummaryrefslogtreecommitdiffstats
path: root/cfrontend/Ctyping.v
diff options
context:
space:
mode:
authorDavid Monniaux <david.monniaux@univ-grenoble-alpes.fr>2020-04-09 16:28:05 +0200
committerDavid Monniaux <david.monniaux@univ-grenoble-alpes.fr>2020-04-09 16:28:05 +0200
commit47ecb1ec8d00636d6e7bb4cebd21df5d0b9b5ac7 (patch)
treeb4cee1012000686f604c0fd7f00a562562e5c8ce /cfrontend/Ctyping.v
parentf2e6e7ff8aedb94b42da53ddc6bcd1c9ada38b80 (diff)
parentd11616ef3d2561e9cdbc819a7b8b101875fdea09 (diff)
downloadcompcert-kvx-47ecb1ec8d00636d6e7bb4cebd21df5d0b9b5ac7.tar.gz
compcert-kvx-47ecb1ec8d00636d6e7bb4cebd21df5d0b9b5ac7.zip
Merge remote-tracking branch 'origin/mppa-expect3' into mppa-work
Diffstat (limited to 'cfrontend/Ctyping.v')
-rw-r--r--cfrontend/Ctyping.v3
1 files changed, 3 insertions, 0 deletions
diff --git a/cfrontend/Ctyping.v b/cfrontend/Ctyping.v
index 00fcf8ab..bde4001f 100644
--- a/cfrontend/Ctyping.v
+++ b/cfrontend/Ctyping.v
@@ -111,6 +111,7 @@ Definition comparison_type (ty1 ty2: type) (m: string): res type :=
Definition type_binop (op: binary_operation) (ty1 ty2: type) : res type :=
match op with
+ | Oexpect => binarith_type ty1 ty2 "__builtin_expect"
| Oadd =>
match classify_add ty1 ty2 with
| add_case_pi ty _ | add_case_ip _ ty
@@ -1546,6 +1547,8 @@ Lemma pres_sem_binop:
Proof.
intros until m; intros TY SEM WT1 WT2.
destruct op; simpl in TY; simpl in SEM.
+- (* expect *)
+ unfold sem_expect in SEM. eapply pres_sem_binarith; eauto; intros; exact I.
- (* add *)
unfold sem_add, sem_add_ptr_int, sem_add_ptr_long in SEM; DestructCases; auto with ty.
eapply pres_sem_binarith; eauto; intros; exact I.