From d523c5c997ad3c4ad924237db16fa7e0a5db757a Mon Sep 17 00:00:00 2001 From: tali Date: Sat, 2 Dec 2023 16:12:51 -0500 Subject: [PATCH] slightly improve pretty printing --- bin/main.ml | 8 +++++--- lib/runtime/code.ml | 2 +- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/bin/main.ml b/bin/main.ml index 5d811dd..857dae1 100644 --- a/bin/main.ml +++ b/bin/main.ml @@ -5,8 +5,10 @@ let () = Logs.set_level (Some Logs.Debug); try - let ast = parse "val output = min(4, min(2, 7))" in + let ast = parse "val x = min(4, 7) println(min(x, 2))" in + Logs.debug (fun m -> m "%a" Ast.pp_modl ast); let prog = compile ast in - let ret = run prog in - Fmt.pr "{\"program\":%a,\"output\":%a}" Code.pp_program prog Value.pp ret + Logs.debug (fun m -> m "%a" Code.pp_program prog); + let modl = run prog in + Logs.debug (fun m -> m "%a" Value.pp modl) with Error msg -> Logs.err (fun m -> m "%s" msg) diff --git a/lib/runtime/code.ml b/lib/runtime/code.ml index 81218a8..2792a66 100644 --- a/lib/runtime/code.ml +++ b/lib/runtime/code.ml @@ -134,7 +134,7 @@ let pp_ins ~label ppf = function | GET (o, s) -> Fmt.pf ppf "mov %a, %a[%a]" pp_reg s pp_reg o pp_reg s | SET (o, s) -> Fmt.pf ppf "mov %a[%a], %a" pp_reg o pp_reg s pp_reg (s + 1) | CLL (o, m, k) -> - Fmt.pf ppf "cll %a[%a](" pp_reg o pp_reg m; + Fmt.pf ppf "cll %a, %a[%a](" pp_reg m pp_reg o pp_reg m; for i = 1 to k do if i > 1 then Fmt.pf ppf ","; Fmt.pf ppf "%a" pp_reg (m + i)