diff options
author | xleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e> | 2013-05-01 09:25:47 +0000 |
---|---|---|
committer | xleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e> | 2013-05-01 09:25:47 +0000 |
commit | 402180a9b3d72825bd5c824c4aa8dcf257328a31 (patch) | |
tree | dcf7bfd1e175a915f53cc2a90d1607386cf79878 /powerpc | |
parent | 7717d9e5f781a0b0d79f72c5439cf822f4ea78d0 (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 'powerpc')
-rw-r--r-- | powerpc/Op.v | 13 |
1 files changed, 10 insertions, 3 deletions
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 *) |