aboutsummaryrefslogtreecommitdiff
path: root/src/boot/me
diff options
context:
space:
mode:
authorGraydon Hoare <[email protected]>2010-10-05 18:10:33 -0700
committerGraydon Hoare <[email protected]>2010-10-05 18:10:33 -0700
commit4168c1dcdaf4cdde860633ea95e0d92d8e116128 (patch)
tree345470fe68145656010995ad0e23970928f48912 /src/boot/me
parentBetter backpointer logic. (diff)
downloadrust-4168c1dcdaf4cdde860633ea95e0d92d8e116128.tar.xz
rust-4168c1dcdaf4cdde860633ea95e0d92d8e116128.zip
Add -lpasses for logging just the progress of passes.
Diffstat (limited to 'src/boot/me')
-rw-r--r--src/boot/me/semant.ml25
1 files changed, 24 insertions, 1 deletions
diff --git a/src/boot/me/semant.ml b/src/boot/me/semant.ml
index 27524573..d692f334 100644
--- a/src/boot/me/semant.ml
+++ b/src/boot/me/semant.ml
@@ -1719,24 +1719,44 @@ let mod_item_logging_visitor
: Walk.
visitor =
let entering _ =
+ if cx.ctxt_sess.Session.sess_log_passes
+ then
+ Session.log "pass" true cx.ctxt_sess.Session.sess_log_out
+ "pass %d: entering %a"
+ pass Ast.sprintf_name (path_to_name path);
if log_flag
then
log cx "pass %d: entering %a"
pass Ast.sprintf_name (path_to_name path)
in
let entered _ =
+ if cx.ctxt_sess.Session.sess_log_passes
+ then
+ Session.log "pass" true cx.ctxt_sess.Session.sess_log_out
+ "pass %d: entered %a"
+ pass Ast.sprintf_name (path_to_name path);
if log_flag
then
log cx "pass %d: entered %a"
pass Ast.sprintf_name (path_to_name path)
in
let leaving _ =
+ if cx.ctxt_sess.Session.sess_log_passes
+ then
+ Session.log "pass" true cx.ctxt_sess.Session.sess_log_out
+ "pass %d: leaving %a"
+ pass Ast.sprintf_name (path_to_name path);
if log_flag
then
log cx "pass %d: leaving %a"
pass Ast.sprintf_name (path_to_name path)
in
let left _ =
+ if cx.ctxt_sess.Session.sess_log_passes
+ then
+ Session.log "pass" true cx.ctxt_sess.Session.sess_log_out
+ "pass %d: left %a"
+ pass Ast.sprintf_name (path_to_name path);
if log_flag
then
log cx "pass %d: left %a"
@@ -2031,7 +2051,10 @@ let run_passes
(crate:Ast.crate)
: unit =
let do_pass i pass =
- Walk.walk_crate
+ if cx.ctxt_sess.Session.sess_log_passes
+ then Session.log "pass" true cx.ctxt_sess.Session.sess_log_out
+ "starting pass %s # %d" name i;
+ Walk.walk_crate
(Walk.path_managing_visitor path
(mod_item_logging_visitor cx log_flag log i path pass))
crate