summaryrefslogtreecommitdiff
path: root/cfrontend
diff options
context:
space:
mode:
authorGravatar xleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e>2014-04-09 13:26:16 +0000
committerGravatar xleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e>2014-04-09 13:26:16 +0000
commit336a1f906a9c617e68e9d43e244bf42e9bdbae64 (patch)
tree47c65aa1aa9c9eadbd98ec0e443ad0105bb0b268 /cfrontend
parent76f49ca6af4ffbc77c0ba7965d409c3de04011bd (diff)
Constprop: use "not" for "xorimm(-1)"; optimize == 1 and != 0 comparisons over booleans.
Select*: more systematic constant propagation; don't CP shifts by amounts outside of [0..31]. Driver: timer for whole compilation. git-svn-id: https://yquem.inria.fr/compcert/svn/compcert/trunk@2452 fca1b0fc-160b-0410-b1d3-a4f43f01ea2e
Diffstat (limited to 'cfrontend')
-rw-r--r--cfrontend/Cminorgen.v10
1 files changed, 3 insertions, 7 deletions
diff --git a/cfrontend/Cminorgen.v b/cfrontend/Cminorgen.v
index 724e80c..8ecf498 100644
--- a/cfrontend/Cminorgen.v
+++ b/cfrontend/Cminorgen.v
@@ -39,13 +39,9 @@ Local Open Scope error_monad_scope.
taken in the Csharpminor code can be mapped to Cminor local
variable, since the latter do not reside in memory.
- Another task performed during the translation to Cminor is to eliminate
- redundant casts to small numerical types (8- and 16-bit integers,
- single-precision floats).
-
- Finally, the Clight-like [switch] construct of Csharpminor
- is transformed into the simpler, lower-level [switch] construct
- of Cminor.
+ Another task performed during the translation to Cminor is to
+ transform the Clight-like [switch] construct of Csharpminor
+ into the simpler, lower-level [switch] constructs of Cminor.
*)
(** * Handling of variables *)