summaryrefslogtreecommitdiff
path: root/ia32/NeedOp.v
diff options
context:
space:
mode:
authorGravatar xleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e>2014-04-06 18:32:27 +0000
committerGravatar xleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e>2014-04-06 18:32:27 +0000
commit76f49ca6af4ffbc77c0ba7965d409c3de04011bd (patch)
treed2167acae5dc5c02995fa12c30472a9e7d5a7d47 /ia32/NeedOp.v
parent6bad7ed856e016aab1d947c57d373baecf7c98c4 (diff)
Support Onot operator / notl instruction. More constant propagation during selection.
git-svn-id: https://yquem.inria.fr/compcert/svn/compcert/trunk@2451 fca1b0fc-160b-0410-b1d3-a4f43f01ea2e
Diffstat (limited to 'ia32/NeedOp.v')
-rw-r--r--ia32/NeedOp.v2
1 files changed, 2 insertions, 0 deletions
diff --git a/ia32/NeedOp.v b/ia32/NeedOp.v
index 1237473..2c8698f 100644
--- a/ia32/NeedOp.v
+++ b/ia32/NeedOp.v
@@ -53,6 +53,7 @@ Definition needs_of_operation (op: operation) (nv: nval): list nval :=
| Oorimm n => op1 (orimm nv n)
| Oxor => op2 (bitwise nv)
| Oxorimm n => op1 (bitwise nv)
+ | Onot => op1 (bitwise nv)
| Oshl => op2 (default nv)
| Oshlimm n => op1 (shlimm nv n)
| Oshr => op2 (default nv)
@@ -158,6 +159,7 @@ Proof.
- apply orimm_sound; auto.
- apply xor_sound; auto.
- apply xor_sound; auto with na.
+- apply notint_sound; auto.
- apply shlimm_sound; auto.
- apply shrimm_sound; auto.
- apply shruimm_sound; auto.