summaryrefslogtreecommitdiff
path: root/arm
diff options
context:
space:
mode:
authorGravatar xleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e>2013-05-01 09:25:47 +0000
committerGravatar xleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e>2013-05-01 09:25:47 +0000
commit402180a9b3d72825bd5c824c4aa8dcf257328a31 (patch)
treedcf7bfd1e175a915f53cc2a90d1607386cf79878 /arm
parent7717d9e5f781a0b0d79f72c5439cf822f4ea78d0 (diff)
Coq-defined equality functions for Allocation. (continued)
git-svn-id: https://yquem.inria.fr/compcert/svn/compcert/trunk@2226 fca1b0fc-160b-0410-b1d3-a4f43f01ea2e
Diffstat (limited to 'arm')
-rw-r--r--arm/Op.v13
1 files changed, 10 insertions, 3 deletions
diff --git a/arm/Op.v b/arm/Op.v
index 3dfea77..2c84d90 100644
--- a/arm/Op.v
+++ b/arm/Op.v
@@ -144,14 +144,21 @@ Proof.
decide equality.
Defined.
+Definition eq_condition (x y: condition) : {x=y} + {x<>y}.
+Proof.
+ generalize Int.eq_dec; intro.
+ assert (forall (x y: comparison), {x=y}+{x<>y}). decide equality.
+ generalize eq_shift; intro.
+ decide equality.
+Defined.
+
Definition eq_operation (x y: operation): {x=y} + {x<>y}.
Proof.
generalize Int.eq_dec; intro.
generalize Float.eq_dec; intro.
assert (forall (x y: ident), {x=y}+{x<>y}). exact peq.
generalize eq_shift; intro.
- assert (forall (x y: comparison), {x=y}+{x<>y}). decide equality.
- assert (forall (x y: condition), {x=y}+{x<>y}). decide equality.
+ generalize eq_condition; intro.
decide equality.
Defined.
@@ -162,7 +169,7 @@ Proof.
decide equality.
Defined.
-Global Opaque eq_shift eq_operation eq_addressing.
+Global Opaque eq_shift eq_condition eq_operation eq_addressing.
(** * Evaluation functions *)