From ef5a64e2cf8e4ee5b31c9e040867fd107692c835 Mon Sep 17 00:00:00 2001 From: Graydon Hoare Date: Fri, 8 Oct 2010 23:25:37 -0700 Subject: Add quad-counting system. --- src/boot/driver/main.ml | 4 ++++ src/boot/driver/session.ml | 2 ++ 2 files changed, 6 insertions(+) (limited to 'src/boot/driver') diff --git a/src/boot/driver/main.ml b/src/boot/driver/main.ml index 0024f2fd..b37f5d93 100644 --- a/src/boot/driver/main.ml +++ b/src/boot/driver/main.ml @@ -61,11 +61,13 @@ let (sess:Session.sess) = Session.sess_failed = false; Session.sess_spans = Hashtbl.create 0; Session.sess_report_timing = false; + Session.sess_report_quads = false; Session.sess_report_gc = false; Session.sess_report_deps = false; Session.sess_next_crate_id = 0; Session.sess_fuzz_item_count = 5; Session.sess_timings = Hashtbl.create 0; + Session.sess_quad_counts = Hashtbl.create 0; Session.sess_lib_dirs = Queue.create (); Session.sess_crate_meta = Hashtbl.create 0; Session.sess_node_id_counter = ref (Node 0); @@ -221,6 +223,8 @@ let argspecs = (flag (fun _ -> sess.Session.sess_report_timing <- true) "-rtime" "report timing of compiler phases"); + (flag (fun _ -> sess.Session.sess_report_quads <- true) + "-rquads" "report categories of quad emitted"); (flag (fun _ -> sess.Session.sess_report_gc <- true) "-rgc" "report gc behavior of compiler"); ("-rsig", Arg.String dump_sig, diff --git a/src/boot/driver/session.ml b/src/boot/driver/session.ml index d9317a6c..39848982 100644 --- a/src/boot/driver/session.ml +++ b/src/boot/driver/session.ml @@ -46,12 +46,14 @@ type sess = mutable sess_trace_gc: bool; mutable sess_failed: bool; mutable sess_report_timing: bool; + mutable sess_report_quads: bool; mutable sess_report_gc: bool; mutable sess_report_deps: bool; mutable sess_next_crate_id: int; mutable sess_fuzz_item_count: int; sess_timings: (string, float) Hashtbl.t; + sess_quad_counts: (string, int ref) Hashtbl.t; sess_spans: (node_id,span) Hashtbl.t; sess_lib_dirs: filename Queue.t; sess_crate_meta: (meta, crate_id) Hashtbl.t; -- cgit v1.2.3