summaryrefslogtreecommitdiff
path: root/cfrontend/PrintCsyntax.ml
diff options
context:
space:
mode:
authorGravatar xleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e>2010-05-02 07:40:56 +0000
committerGravatar xleroy <xleroy@fca1b0fc-160b-0410-b1d3-a4f43f01ea2e>2010-05-02 07:40:56 +0000
commit3fb4ee15ed74c55923fe702a130d77120a471ca3 (patch)
treed315dcd8e4338ee2dbc8643473021b6e38fb51c9 /cfrontend/PrintCsyntax.ml
parent551b52e3b0ddc7a06358f1246b448664a59c86b4 (diff)
Add "fabs" (floating-point absolute value) as a unary operator in
Clight and C#minor. Recognize __builtin_fabs and turn it into this operator. git-svn-id: https://yquem.inria.fr/compcert/svn/compcert/trunk@1329 fca1b0fc-160b-0410-b1d3-a4f43f01ea2e
Diffstat (limited to 'cfrontend/PrintCsyntax.ml')
-rw-r--r--cfrontend/PrintCsyntax.ml3
1 files changed, 2 insertions, 1 deletions
diff --git a/cfrontend/PrintCsyntax.ml b/cfrontend/PrintCsyntax.ml
index ebeda7c..d678831 100644
--- a/cfrontend/PrintCsyntax.ml
+++ b/cfrontend/PrintCsyntax.ml
@@ -25,7 +25,7 @@ let name_unop = function
| Onotbool -> "!"
| Onotint -> "~"
| Oneg -> "-"
-
+ | Ofabs -> "__builtin_fabs"
let name_binop = function
| Oadd -> "+"
@@ -131,6 +131,7 @@ let parenthesis_level (Expr (e, ty)) =
| Econst_int _ -> 0
| Econst_float _ -> 0
| Evar _ -> 0
+ | Eunop(Ofabs, _) -> -10 (* force parentheses around argument *)
| Eunop(_, _) -> 30
| Ederef _ -> 20
| Eaddrof _ -> 30