diff options
author | Xavier Leroy <xavier.leroy@inria.fr> | 2000-03-05 19:17:54 +0000 |
---|---|---|
committer | Xavier Leroy <xavier.leroy@inria.fr> | 2000-03-05 19:17:54 +0000 |
commit | 96cb7c30af3beeaeab1a7999458740508a964ba3 (patch) | |
tree | d3cabd4896a710774060e3ec8167c0a0995d367e /bytecomp/printlambda.ml | |
parent | fe55dbbdab706f55f4a33f70c880ef1d77555d25 (diff) |
Ajout des conversions int <-> int32 <-> int64
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@2901 f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
Diffstat (limited to 'bytecomp/printlambda.ml')
-rw-r--r-- | bytecomp/printlambda.ml | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/bytecomp/printlambda.ml b/bytecomp/printlambda.ml index bb69d239b..78ded6184 100644 --- a/bytecomp/printlambda.ml +++ b/bytecomp/printlambda.ml @@ -43,11 +43,16 @@ let rec struct_const ppf = function let print_id ppf id = Ident.print id +let boxed_integer_name = function + Pnativeint -> "nativeint" + | Pint32 -> "int32" + | Pint64 -> "int64" + let print_boxed_integer name bi = - match bi with - Pnativeint -> printf "Nativeint.%s" name - | Pint32 -> printf "Int32.%s" name - | Pint64 -> printf "Int64.%s" name + printf "%s_%s" (boxed_integer_name bi) name + +let print_boxed_integer_conversion bi1 bi2 = + printf "%s_of_%s" (boxed_integer_name bi2) (boxed_integer_name bi1) let print_bigarray name kind layout = printf "Bigarray.%s[%s,%s]" @@ -136,6 +141,7 @@ let primitive ppf = function | Pbittest -> print_string "testbit" | Pbintofint bi -> print_boxed_integer "of_int" bi | Pintofbint bi -> print_boxed_integer "to_int" bi + | Pcvtbint(bi1, bi2) -> print_boxed_integer_conversion bi1 bi2 | Pnegbint bi -> print_boxed_integer "neg" bi | Paddbint bi -> print_boxed_integer "add" bi | Psubbint bi -> print_boxed_integer "sub" bi |