summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--arm/Op.v13
-rw-r--r--powerpc/Op.v13
2 files changed, 20 insertions, 6 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 *)
diff --git a/powerpc/Op.v b/powerpc/Op.v
index e584726..5835717 100644
--- a/powerpc/Op.v
+++ b/powerpc/Op.v
@@ -116,13 +116,20 @@ Inductive addressing: Type :=
(** Comparison functions (used in module [CSE]). *)
+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.
+ 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.
- 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.
@@ -133,7 +140,7 @@ Proof.
decide equality.
Defined.
-Global Opaque eq_addressing eq_operation.
+Global Opaque eq_condition eq_addressing eq_operation.
(** * Evaluation functions *)