aboutsummaryrefslogtreecommitdiffstats
path: root/mppa_k1c/ValueAOp.v
diff options
context:
space:
mode:
authorDavid Monniaux <david.monniaux@univ-grenoble-alpes.fr>2019-06-04 21:42:30 +0200
committerDavid Monniaux <david.monniaux@univ-grenoble-alpes.fr>2019-06-04 21:42:30 +0200
commit6064bac57701ba0a12031d43acbe25cb0140730c (patch)
tree58577a651e670b9a39b94d644f5da039def73864 /mppa_k1c/ValueAOp.v
parentac366a59308ae85a0cbfefb8b9be79763d5c5f91 (diff)
downloadcompcert-kvx-6064bac57701ba0a12031d43acbe25cb0140730c.tar.gz
compcert-kvx-6064bac57701ba0a12031d43acbe25cb0140730c.zip
begin osel imm
Diffstat (limited to 'mppa_k1c/ValueAOp.v')
-rw-r--r--mppa_k1c/ValueAOp.v6
1 files changed, 6 insertions, 0 deletions
diff --git a/mppa_k1c/ValueAOp.v b/mppa_k1c/ValueAOp.v
index d24cebcc..daceab8b 100644
--- a/mppa_k1c/ValueAOp.v
+++ b/mppa_k1c/ValueAOp.v
@@ -265,6 +265,8 @@ Definition eval_static_operation (op: operation) (vl: list aval): aval :=
| (Oinsf stop start), v0::v1::nil => eval_static_insf stop start v0 v1
| (Oinsfl stop start), v0::v1::nil => eval_static_insfl stop start v0 v1
| Osel c ty, v1::v2::vc::nil => select (eval_static_condition0 c vc) v1 v2
+ | Oselimm c imm, v1::v2::vc::nil => select (eval_static_condition0 c vc) v1 (I imm)
+ | Osellimm c imm, v1::v2::vc::nil => select (eval_static_condition0 c vc) v1 (L imm)
| _, _ => Vbot
end.
@@ -421,6 +423,10 @@ Proof.
+ constructor.
(* select *)
- apply select_sound; auto. eapply eval_static_condition0_sound; eauto.
+ (* select imm *)
+ - apply select_sound; auto with va. eapply eval_static_condition0_sound; eauto.
+ (* select long imm *)
+ - apply select_sound; auto with va. eapply eval_static_condition0_sound; eauto.
Qed.
End SOUNDNESS.