aboutsummaryrefslogtreecommitdiffstats
path: root/mppa_k1c/SelectOp.v
diff options
context:
space:
mode:
Diffstat (limited to 'mppa_k1c/SelectOp.v')
-rw-r--r--mppa_k1c/SelectOp.v10
1 files changed, 10 insertions, 0 deletions
diff --git a/mppa_k1c/SelectOp.v b/mppa_k1c/SelectOp.v
index 028c2eb1..109d447b 100644
--- a/mppa_k1c/SelectOp.v
+++ b/mppa_k1c/SelectOp.v
@@ -728,6 +728,8 @@ Nondetfunction notint (e: expr) :=
| Eop (Oandimm n) (e1:::Enil) => Eop (Onandimm n) (e1:::Enil)
| Eop Oor (e1:::e2:::Enil) => Eop Onor (e1:::e2:::Enil)
| Eop (Oorimm n) (e1:::Enil) => Eop (Onorimm n) (e1:::Enil)
+ | Eop Oxor (e1:::e2:::Enil) => Eop Onxor (e1:::e2:::Enil)
+ | Eop (Oxorimm n) (e1:::Enil) => Eop (Onxorimm n) (e1:::Enil)
| _ => xorimm Int.mone e
end.
>>
@@ -738,6 +740,8 @@ Inductive notint_cases: forall (e: expr), Type :=
| notint_case2: forall n e1, notint_cases (Eop (Oandimm n) (e1:::Enil))
| notint_case3: forall e1 e2, notint_cases (Eop Oor (e1:::e2:::Enil))
| notint_case4: forall n e1, notint_cases (Eop (Oorimm n) (e1:::Enil))
+ | notint_case5: forall e1 e2, notint_cases (Eop Oxor (e1:::e2:::Enil))
+ | notint_case6: forall n e1, notint_cases (Eop (Oxorimm n) (e1:::Enil))
| notint_default: forall (e: expr), notint_cases e.
Definition notint_match (e: expr) :=
@@ -746,6 +750,8 @@ Definition notint_match (e: expr) :=
| Eop (Oandimm n) (e1:::Enil) => notint_case2 n e1
| Eop Oor (e1:::e2:::Enil) => notint_case3 e1 e2
| Eop (Oorimm n) (e1:::Enil) => notint_case4 n e1
+ | Eop Oxor (e1:::e2:::Enil) => notint_case5 e1 e2
+ | Eop (Oxorimm n) (e1:::Enil) => notint_case6 n e1
| e => notint_default e
end.
@@ -759,6 +765,10 @@ Definition notint (e: expr) :=
Eop Onor (e1:::e2:::Enil)
| notint_case4 n e1 => (* Eop (Oorimm n) (e1:::Enil) *)
Eop (Onorimm n) (e1:::Enil)
+ | notint_case5 e1 e2 => (* Eop Oxor (e1:::e2:::Enil) *)
+ Eop Onxor (e1:::e2:::Enil)
+ | notint_case6 n e1 => (* Eop (Oxorimm n) (e1:::Enil) *)
+ Eop (Onxorimm n) (e1:::Enil)
| notint_default e =>
xorimm Int.mone e
end.