aboutsummaryrefslogtreecommitdiffstats
path: root/mppa_k1c/ValueAOp.v
diff options
context:
space:
mode:
Diffstat (limited to 'mppa_k1c/ValueAOp.v')
-rw-r--r--mppa_k1c/ValueAOp.v10
1 files changed, 10 insertions, 0 deletions
diff --git a/mppa_k1c/ValueAOp.v b/mppa_k1c/ValueAOp.v
index 33f4d8a9..57676b35 100644
--- a/mppa_k1c/ValueAOp.v
+++ b/mppa_k1c/ValueAOp.v
@@ -75,6 +75,11 @@ Definition eval_static_operation (op: operation) (vl: list aval): aval :=
| Oxorimm n, v1::nil => xor v1 (I n)
| Onxor, v1::v2::nil => notint (xor v1 v2)
| Onxorimm n, v1::nil => notint (xor v1 (I n))
+ | Onot, v1::nil => notint v1
+ | Oandn, v1::v2::nil => and (notint v1) v2
+ | Oandnimm n, v1::nil => and (notint v1) (I n)
+ | Oorn, v1::v2::nil => or (notint v1) v2
+ | Oornimm n, v1::nil => or (notint v1) (I n)
| Oshl, v1::v2::nil => shl v1 v2
| Oshlimm n, v1::nil => shl v1 (I n)
| Oshr, v1::v2::nil => shr v1 v2
@@ -111,6 +116,11 @@ Definition eval_static_operation (op: operation) (vl: list aval): aval :=
| Oxorlimm n, v1::nil => xorl v1 (L n)
| Onxorl, v1::v2::nil => notl (xorl v1 v2)
| Onxorlimm n, v1::nil => notl (xorl v1 (L n))
+ | Onotl, v1::nil => notl v1
+ | Oandnl, v1::v2::nil => andl (notl v1) v2
+ | Oandnlimm n, v1::nil => andl (notl v1) (L n)
+ | Oornl, v1::v2::nil => orl (notl v1) v2
+ | Oornlimm n, v1::nil => orl (notl v1) (L n)
| Oshll, v1::v2::nil => shll v1 v2
| Oshllimm n, v1::nil => shll v1 (I n)
| Oshrl, v1::v2::nil => shrl v1 v2